1

Rails アプリでの認証に Clearance を使用しています。セッションタイムアウトを設定する方法を知っている人はいますか? ログインしてから 5 分以内にログアウトされ、タイムアウトの設定方法を指定するものが見つからないようです。

4

2 に答える 2

2

Clearance をインストールしたときに、config/initializers/clearance.rb ファイルが追加されているはずです。cookie_expiration 設定を使用して、そこでセッション タイムアウトを設定できます。ドキュメントから、次のようになります。

@example
  Clearance.configure do |config|
    config.mailer_sender     = 'me@example.com'
    config.cookie_expiration = lambda { 2.weeks.from_now.utc }
    config.password_strategy = MyPasswordStrategy
    config.user_model        = MyNamespace::MyUser
  end

したがって、Cookie の有効期限に、将来発生する Time オブジェクトを返すラムダを与えるだけです。

于 2012-05-12T00:57:40.870 に答える
0

rdoc を見るとcookie_expiration、Clearance 構成クラスにメソッドがあります。ここにあります -- メソッドのソースを見てください:

デフォルトでは、1 年のように見えます。

def initialize
  @mailer_sender     = 'donotreply@example.com'
  @cookie_expiration = lambda { 1.year.from_now.utc }
end

したがって、構成でそれをオーバーライドすることを検討します。

http://rdoc.info:8080/github/thoughtbot/clearance/Clearance/Configuration#cookie_expiration-instance_method

見つからない場合は、フリーノードのソートボット IRC チャネル #thoughtbot で質問できる場合があります。時々、開発者がたむろして質問に答えます。

于 2012-05-12T00:56:52.600 に答える