繁体   English   中英

使用Devise设置会话长度

[英]Setting session length with Devise

我的会话设置在1-3小时不使用后设置超时(不确定确切多长时间)。 我该怎么调整呢?

我查看了文档,似乎找不到这个设置。

谢谢

查看config / initializers / devise.rb。 有很多配置设置,包括config.timeout_in 我的版本默认为30分钟。 您也可以在模型上设置它:

class User < ActiveRecord::Base
  devise :timeoutable, :timeout_in => 15.minutes

您现在还可以动态设置超时

使用Rails4,最好遵循的是:

在models / user.rb中:添加:超出现有的设计模块列表。

class User < ActiveRecord::Base
  devise :timeoutable
end

在config / initializers / devise.rb中:设置timeout参数。

Devise.setup do |config|
  config.timeout_in = 3.hours
end

全球:

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

Devise.setup do |config|
  config.timeout_in = 3.hours
end

还可以动态设置timeout_in选项

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM