Rails:跟踪用户的ID
在我的Rails应用程序中,我有一个登录页面。 在该人登录后,我的应用程序继续跟踪已登录的人的最佳方式是什么。例如,如果用户移动到不同的页面,我的控制器/操作将失去对该用户的跟踪,除非我继续通过用户随后访问的每个页面之间的变量。 有更好的方法吗? 我应该使用sessions
变量吗?
是的,会话正是您正在寻找的。
session["user_id"] = user_id
并在另一个页面上获取当前用户(如果您的模型名为User):
@current_user = User.find(session["user_id]")
强烈考虑一个插件来管理它。
有几种,例如restful authentication 。
这给出了current_user
和logged_in?
function。
有一些很棒的gem可以做到这一点
-
设计
-
AuthLogic