1〜3時間使用しないと、タイムアウトが発生する私のセッション(正確な長さはわかりません)。これを調整するにはどうすればよいですか?
私はドキュメントを調べましたが、この設定を見つけることができないようです。
ありがとう
Config/initializers/devise.rbを見てください。 config.timeout_in
を含む多くの構成設定があります。私のバージョンのデフォルトは30分です。モデル自体に設定することもできます:
class User < ActiveRecord::Base
devise :timeoutable, :timeout_in => 15.minutes
また、 タイムアウトを動的に設定する も使用できます。
Rails4では、次のことをお勧めします。
Models/user.rbで::timeoutableを既存のdeviseモジュールのリストに追加します。
class User < ActiveRecord::Base
devise :timeoutable
end
Config/initializers/devise.rbで:タイムアウトパラメーターを設定します。
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