我尝试在导入数据库之前分析CSV,但遇到ActionDispatch::Cookies::CookieOverflow
错误。
控制器
def bulk_upload_weigh_ins
@response = WeighIn.check_file(params[:file])
redirect_to import_weigh_ins_path, notice: @response
end
模型
def self.check_file(file)
status = {
name_error: [],
weigh_in_error: []
}
count = 0
CSV.foreach(file.path, headers: @weigh_in_cols) do |row|
hashed_row = row.to_hash
user = User.find_by(scale_id: hashed_row["scale_id"])
if user == nil
status[:name_error] << [hashed_row["name"], hashed_row["scale_id"]]
elsif user.check_ins.with_no_weigh_ins.length != 1
status[:weigh_in_error] << [hashed_row["name"], hashed_row["scale_id"]]
else
count += 1
end
status[:number_of_success] = count
end
return status
end
我看过this帖子,但我不确定我应该使用同样的修复程序。有没有更好的方法来设置它?
答案 0 :(得分:1)
我做了以下事情来解决这个问题:
rails generate active_record:session_migration
rake db:migrate
Rails.application.config.session_store :active_record_store
希望这有助于某人