For a while, I kept getting exceptions from my app in the form of “TypeError (can’t dump File):”. I finally found out that this was caused when I was using active_record_store with something like file_column, attachment_fu, or paperclip. Basically whenever you’re storing a file in session, that was too large for the session, you would experience this issue. Here is how to get around it:
Say you have a model like so (This is using file_column):
class Model < ActiveRecord::Base file_column :filename end
Then in your controller you would want to add a line before you redirect off to clear that session:
class Controller < ApplicationController def create @model = Model.find(params[:model]) @model.save! params[:model][:filename] = nil rescue nil # Reset value here redirect_to models_path(@model) end end
As you can see, I am resetting the filename value on the model. Now it shouldn’t complain that it can’t dump the file. Happy RAILSING!
Tags: active_record_store, attachment_fu, cant dump file, file_column, paperclip, rails, typeerror

June 23rd, 2009 at 3:20 pm
Very helpful. Thank you!