是否在rails 4.1

时间:2015-05-06 09:09:03

标签: ruby-on-rails ruby session

Rails security code中声明会话默认存储为客户端的cookie,但是它没有说明如何切换到服务器端存储。它只是说:

  

Rails为会话哈希提供了几种存储机制。该   最重要的是ActionDispatch :: Session :: CookieStore

我已根据此blog进行了一些搜索:

  

从Rails 4开始,Active Record会话存储已从核心框架中删除,现已弃用。

它说服务器端存储有一个Gem,但它表示没有保证支持Rails 4.1及更高版本。

因此,对于rails中的服务器端会话存储没有核心支持吗?

1 个答案:

答案 0 :(得分:1)

支持服务器端会话存储 - 请参阅http://guides.rubyonrails.org/action_controller_overview.html#session

相关位:

  

会话仅在控制器和视图中可用,并且可以使用多种不同的存储机制之一:

     

ActionDispatch :: Session :: CookieStore - 存储客户端上的所有内容。   ActionDispatch :: Session :: CacheStore - 将数据存储在Rails缓存中。   ActionDispatch :: Session :: ActiveRecordStore - 使用>将数据存储在数据库中积极记录。 (需要activerecord-session_store gem)。   ActionDispatch :: Session :: MemCacheStore - 将数据存储在memcached集群中(这是一个遗留实现;请考虑使用CacheStore)。

和...

  

如果您需要不同的会话存储机制,可以在config / initializers / session_store.rb文件中更改它

如果您在周围搜索,还会发现其他服务器端会话存储选项,这些选项不属于Rails核心,使​​用Redis之类的东西。