1
为什么中间方法是必需的?在我看来,这只是连接第一和第三种方法的中间步骤。登录用户(Ruby on Rails教程第8章)
module SessionsHelper
def sign_in(user)
cookies.permanent[:remember_token] = user.remember_token
self.current_user = user
end
def current_user=(user)
@current_user = user
end
def current_user
@current_user ||= User.find_by_remember_token(cookies[:remember_token])
end
end
一个问题......当代码运行,请问通过这些方法的应用进展?我认为这可能有助于理解进展。 – bwobst 2013-03-05 13:38:04
没什么特别。如果您正在登录,则使用'sign_in(user)'方法。然后,在用户登录后,将使用'current_user =(user)'方法。但是,如果没有用户被发现,只有在用户使用时才记住我复选框,那么查找来自'remember_token',在这种情况下调用'current_user'方法。 – 2013-03-05 13:56:16