【问题标题】:How to configure time out using devise?如何使用设计配置超时?
【发布时间】:2012-05-08 08:46:45
【问题描述】:

型号:

devise :database_authenticatable, :registerable,:timeoutable, :recoverable, :rememberable, :trackable, :validatable,:timeout_in => 10.seconds

开发.rb:

config.timeout_in = 10.seconds

设计.rb:

config.timeout_in = 10.seconds

【问题讨论】:

  • 你真的需要用 4 个空格来格式化你的代码
  • 那么有什么问题 - 什么不起作用?
  • 10 秒后未注销
  • 我听不懂你的回复..请帮帮我

标签: ruby-on-rails devise


【解决方案1】:

也可以动态设置 timeout_in 选项

class User < ActiveRecord::Base
  devise (...), :timeoutable

  def timeout_in
    if self.admin? 
      1.year
    else
      2.days
    end
  end
end

【讨论】:

    【解决方案2】:

    您是否希望页面刷新并再次显示登录页面?如果是这样,那不是超时功能的工作方式。如果您希望它在刷新时显示登录页面,请从模型中删除超时部分并将以下内容放入 devise.rb 而不是 development.rb 中。不要忘记重启 Rails 服务器。

    config.timeout_in = 1.hour
    

    这一切都记录在设计维基here

    另外,我不确定 10 秒背后的逻辑?好像有点太短了。如果仍然无法正常工作,请增加(例如)五分钟并进行测试。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-01-08
    • 2019-04-05
    • 2021-03-19
    • 2011-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    相关资源
    最近更新 更多