Rails:跟踪用户的ID

时间:2009-03-08 10:31:21

标签: ruby-on-rails session login session-management

在我的Rails应用程序中,我有一个登录页面。在该人登录后,我的应用程序继续跟踪已登录的人的最佳方式是什么。例如,如果用户移动到不同的页面,我的控制器/操作将失去对该用户的跟踪,除非我继续通过用户随后访问的每个页面之间的变量。有没有更好的方法呢?我应该使用sessions变量吗?

3 个答案:

答案 0 :(得分:7)

是的,会话正是您所寻找的。

session["user_id"] = user_id

要在另一个页面上获取当前用户(如果您的模型名为User):

@current_user = User.find(session["user_id]")

答案 1 :(得分:4)

强烈考虑一个插件来管理它。

有几个,例如restful authentication

这会提供current_userlogged_in?功能。

答案 2 :(得分:2)

有一些伟大的宝石可以做到这一点