23

Rails アプリケーションで、ユーザーが 30 分間または特定の時間アイドル状態になった場合に自動的にログアウトされるように設定する方法。誰でも解決策を提供できますか。私は認証目的でdeviseを使用しています。どんな助けでも大歓迎です。

4

4 に答える 4

27

Timeoutableモデル特性を使用する必要があります。

Timeoutable は、ユーザー セッションが既に期限切れになっているかどうかを確認します。構成された時間後にセッションが期限切れになると、ユーザーは資格情報を再度求められます。つまり、ユーザーはサインイン ページにリダイレクトされます。

オプション

Timeoutable は、devise_for に次のオプションを追加します。

  • +timeout_in+: アクティビティなしでユーザー セッションをタイムアウトする間隔。

あなたのモデルでは必要です

devise :timeoutable
# along with :database_authenticatable, :registerable and other things.

また、 を見てconfig/initializers/devise.rbください。そこでタイムアウト値を設定できます。

于 2013-01-29T07:42:52.973 に答える