私はMichael Hartl's Railstutorialを使っていますが、私は練習問題9.6.2に固執しています。私はオンラインで検索、私のセッションヘルパーでこのコードを使用:オンラインからRailsでは、ブラウザを閉じたときにどのようにセッションを破棄しますか?
module SessionsHelper
def sign_in(user)
session[:user_id] = user.id
self.current_user = user
end
def current_user=(user)
@current_user = user
end
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
def signed_in?
!current_user.nil?
end
def sign_out
session[:user_id] = nil
self.current_user = nil
end
end
私はそれを見つけた:ブラウザを閉じたときにhttp://www.nimweb.it/web-development/ruby-on-rails-web-development/ruby-on-rails-tutorial-exercise-9-6-2-rails-session/
ただし、ユーザーがログアウトされていません。他の誰かがこれに対する解決策を持っていますか?
Expiresオプションが指定されていない場合、ブラウザーが閉じられると(ほとんどのユーザーエージェントで)Cookieが期限切れになります。 –
良い点 - 明らかであるにもかかわらず、古いセッション(サーバーの視点から)を閉じないだけで、次回に新しいセッションを開くようにします。 – jwd