Дата окончания сессии Ruby on Rails
У меня есть следующая строка в моем приложении, которая позволяет сроку действия файла cookie по умолчанию 20 минут.
Rails.application.config.session_store :cookie_store, key: '_rails-omniauth_session', expire_after: 20.minutes
Но я хочу установить конкретную дату истечения срока действия по некоторым причинам. Я пробовал следующие строки, но они не смогли это сделать.
request.session_options[:expire_after] = 2.years
ActionController::Base.session_options[:expire_after] = 2.years
Как установить пользовательскую дату истечения срока действия?
Анг предложения,
Благодарю.
1 ответ
Если вам нужно установить срок действия сеансов через все контроллеры в вашем приложении, просто добавьте следующую опцию в ваш config/intializers/session_store.rb
файл:
:expire_after => 60.minutes
Если вам нужно установить другое время истечения срока действия в разных контроллерах или действиях, используйте следующий код в действии или некоторые before_filter
:
request.session_options = request.session_options.dup
request.session_options[:expire_after] = 5.minutes
request.session_options.freeze
Дублирование хэша необходимо только потому, что он уже заморожен