Rails中的会话4

时间:2013-02-06 02:19:39

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

如果不推荐使用ActiveRecord :: Store,那么维护会话的建议方法是什么?加密cookie存储新标准吗?如果你想保持> 4kb的状态怎么办?

2 个答案:

答案 0 :(得分:6)

在Rails 4中,在您的Gemfile中包含gem 'activerecord-session_store'并运行bundle install。根据{{​​3}}注释完成迁移和配置。

另一种选择是使用'dalli'gem进行会话管理。

答案 1 :(得分:0)

session_store.rb文件夹中查找名为config/initializers的文件。在那里你应该设置你想要使用哪种会话。基于cookie的标准应该是:

ProjectName::Application.config.session_store :cookie_store, key: '_project_name_session'

之后,您需要做的就是从控制器中调用哈希session。您可以在那里设置任何值,它将在请求之间保持不变。

Rails Guides中一样:

  

config.session_store通常在config / initializers / session_store.rb中设置,并指定用于存储会话的类。可能的值有:cookie_store,它是默认值,:mem_cache_store,和:disabled。最后一个告诉Rails不要处理会话。也可以指定自定义会话存储(...)