研究设计,并想知道
之间的区别<% if current_user.present? %>
和
<% if user_signed_in? %>
答案 0 :(得分:4)
不,没有什么区别。
查看user_signed_in?
的元编程实现:
def #{mapping}_signed_in?
!!current_#{mapping}
end
对User
模型进行身份验证后,这将解析为:
def user_signed_in?
!!current_user
end
注意:如果!!current_user
为true
或current_user
,则nil
会返回false
。这与present?
所做的完全相同。