处理Rails 5个会话

时间:2019-04-11 15:21:17

标签: ruby-on-rails ruby-on-rails-5

我正在尝试为用户的会话设置时间限制,我读到可以在config/intializers/session_store.rb上定义此限制,但我的项目似乎没有此文件。 目前,我有这个:

    def sign_in(user)
    session[:user_id] = user.id
    session[:expires_at] = Time.current + 2.minutes
  end

希望你们能提供帮助。

1 个答案:

答案 0 :(得分:1)

在Rails 5.1.1+中不会生成

config/initializers/session_store.rb。但是,更重要的是,您似乎误解了初始化文件。它们在应用程序服务器启动期间被加载一次。它们通常是任意的Ruby代码,都可以在一个文件中执行,但是为了简单和模块化,将它们分开。

您可以自由创建/config/initializers/session_store.rb,它将在启动时加载任何Ruby on Rails代码。

$ touch config/initializers/session_store.rb
$ vim config/initializers/session_store.rb

session_store.rb内:

Rails.application.config.session_store :cookie_store, expire_after: 2.minutes