11

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

4

2 回答 2

6

在 Rails 4 中,包含gem 'activerecord-session_store'在您的 Gemfile 中并运行 bundle install。按照https://github.com/rails/activerecord-session_store说明完成迁移和配置。

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

于 2013-10-22T02:52:50.473 回答
0

查找文件夹session_store.rb内命名的config/initializers文件。在那里你应该设置你想使用哪种会话。一个标准的,基于 cookie 的,应该是这样的:

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

之后,您需要做的就是session从控制器中调用散列。您可以在那里设置任何值,它将在请求之间持续存在。

Rails 指南中:

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

于 2013-02-06T02:49:03.897 回答