Sid*_*Sid 6 ruby activerecord ruby-on-rails authlogic
我遇到了这种叫做记录的方法,Ryan bates在他的authlogic Railscast中使用它并且似乎无法理解它的作用.我已经阅读了文档,但我似乎无法理解该帮助程序是如何有用的.
def current_user
return @current_user if defined?(@current_user)
current_user_session && current_user_session.record
end
Run Code Online (Sandbox Code Playgroud)
我想知道的是,这只是从数据库中获取记录,为什么它与从数据库中获取数据的标准方式不同.
谢谢.
这种"记录"方法是UserSession和User模型之间的belongs_to关系.所以基于Session,它返回User.
但是根据文档,它不再是"记录"了.但"用户".所以你的current_user帮助方法应该如下:
def current_user
return @current_user if defined?(@current_user)
@current_user = current_user_session && current_user_session.user
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
857 次 |
| 最近记录: |