【问题标题】:Unable to store and access Session Variables in Rails 4无法在 Rails 4 中存储和访问会话变量
【发布时间】:2015-03-05 15:38:41
【问题描述】:

我试图通过 session[:user_id] = 1 来存储会话。当我在下一行通过puts(session) 访问它时,它会打印<ActionController::RequestForgeryProtection::ProtectionMethods::NullSession::NullSessionHash:0x0000010433dda8>

我也无法在其他页面中获取session[:user_id]

【问题讨论】:

  • RequestForgeryProtection::ProtectionMethods 这不允许保存会话尝试在SessionsController 中添加skip_before_filter :verify_authenticity_token 这一行
  • @Sontya 我没有使用设计。我应该添加它然后每个控制器?
  • 哦,我不知道,那么添加到每个控制器中并不是一个好主意。尝试更改存储类型,默认会话使用 CookieStore 在你的 development.rb 文件中将其更改为 CacheStore YourAppName::Application.configure do config.session_store = ActionDispatch::Sessions::CacheStore end

标签: ruby-on-rails session ruby-on-rails-4


【解决方案1】:

您正在使用NullStore。只需配置其他存储(文件、memcached 等)

【讨论】:

    猜你喜欢
    • 2014-06-25
    • 2015-07-05
    • 1970-01-01
    • 1970-01-01
    • 2015-05-03
    • 1970-01-01
    • 1970-01-01
    • 2011-06-14
    • 1970-01-01
    相关资源
    最近更新 更多