这可能是一个愚蠢的问题,但我正在使用 Devise 完成这个应用程序,我只是想知道, , 和 & 之间有什么显着authenticate_user!
区别user_signed_in?
吗if current_user
?如果是这样,那么在什么情况下我不会使用其中一种?
谢谢
这可能是一个愚蠢的问题,但我正在使用 Devise 完成这个应用程序,我只是想知道, , 和 & 之间有什么显着authenticate_user!
区别user_signed_in?
吗if current_user
?如果是这样,那么在什么情况下我不会使用其中一种?
谢谢
不确定您所说的“显着差异”是什么意思,所有这些都做不同的事情:
authenticate_user! # Signs user in or redirect
user_signed_in? # Checks whether there is a user signed in or not
current_user # Current signed in user
来源:https ://github.com/plataformatec/devise/blob/master/lib/devise/controllers/helpers.rb
只需阅读变量名称,您就会发现它们不是一回事。
authenticate_user!
这是一种检查用户身份验证的方法,即检查登录名和密码是否匹配。
user_signed_in?
此方法检查用户是否在应用程序上登录。如果会话中有任何数据告诉应用程序用户已登录。
current_user
这将获取在应用程序中登录的用户。