【问题标题】:How do I manipulate my session's expiry time after Rails app initialization?在 Rails 应用程序初始化后,如何操纵会话的到期时间?
【发布时间】:2011-06-10 15:55:48
【问题描述】:

我正在使用 dalli memcached 客户端在我的 Rails 应用程序中进行会话存储。我想允许用户在登录应用程序时选中“保持登录状态”框,这将导致会话在一个月后过期。在应用初始化中设置过期时间非常简单:

config/initializers/session_store.rb

require 'action_dispatch/middleware/session/dalli_store'
Rails.application.config.session_store :dalli_store, :memcache_server => ['host1', 'host2'], :namespace => 'sessions', :key => '_foundation_session', :expire_after => 30.minutes

但是在应用程序初始化后我将如何处理 :expire_after 呢?

【问题讨论】:

    标签: ruby-on-rails memcached


    【解决方案1】:

    我不确定这对你有用,但是 在带有数据库会话存储的 Rails 2.3 中,您可以在操作中使用类似的东西。

    request.session_options = request.session_options.dup
    request.session_options[:expire_after] = 5.minutes
    request.session_options.freeze
    

    希望有用

    编辑: 我为 rails3 找到了这篇新文章

    http://augustl.com/blog/2010/dynamic_session_expiration_time_in_rails_3

    希望有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-20
      • 1970-01-01
      • 2016-05-28
      • 1970-01-01
      • 2015-08-15
      • 2023-03-18
      相关资源
      最近更新 更多