In production mode, I keep getting this error the 2nd time it loads a
page with a serialized attribute:
ActiveRecord::SerializationTypeMismatch (answers_container was
supposed to be a Array, but was a NilClass):
/vendor/rails/activerecord/lib/active_record/base.rb:1964:in
`unserialize_attribute’
In development, it works fine. In fact, if I set to false
config.cache_classes in production.rb, it works fine.
The first time you hit the page, it works fine. Upon refresh, it
returns that error.
This happens with both webbrick and litespeed.
The controller code is:
def new
store_location
if request.env[“HTTP_REFERER”]
params[:my_id] = “survey” if
request.env[“HTTP_REFERER”].include? “survey”
end
@question = Question.new
@question.answers_container = Array.new(2, “”)
@question.creator_message = current_user[:note] if logged_in?
end
In my model, I define the serialized attribute as such:
serialize :answers_container, Array
I was running rails 1.2, then upgraded to 1.2.2 after seeing I have
this problem. I believe when I was running 1.1.6 I did not have this
problem.
Does anyone have any suggestions?
Steve