Rails 4:导入CSV时Cookie溢出

时间:2016-05-20 16:59:30

标签: ruby-on-rails csv ruby-on-rails-4 cookies

我尝试在导入数据库之前分析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帖子,但我不确定我应该使用同样的修复程序。有没有更好的方法来设置它?

1 个答案:

答案 0 :(得分:1)

我做了以下事情来解决这个问题:

  1. rails generate active_record:session_migration
  2. rake db:migrate
  3. 将config / initializers / session_store.rb中的行更改为:Rails.application.config.session_store :active_record_store
  4. 由服务器重新启动
  5. 重启我的浏览器(对我来说不明显)
  6. 希望这有助于某人