我在@bar的rails上有一个ruby对象,其中包含用户名,密码等
如何确保在所有视图中保留这些值?
由于
答案 0 :(得分:7)
如果您按如下方式进行设置:
class ApplicationController < ActionController::Base
before_filter :set_user
protected
def set_user
@user = User.find_by_id(session[:user_id])
end
end
然后在所有控制器中,由于它们都从ApplicationController
继承,因此将设置@user
值。
注意:如果没有为此会话设置会话[:user_id],这会将@user设置为nil。
有关过滤器和:before_filter的更多信息,请查看以下链接:Module:ActionController::Filters::ClassMethods
答案 1 :(得分:1)
我认为你想要某种用户话题?登录并跟踪整个系统?
AuthenticatedSystem可以帮助您。有很多文档可以告诉你如何设置一个使用它的环境。我亲自使用if我已制作的几个系统。
答案 2 :(得分:0)
在ApplicationController
中,将对象添加到会话中并为其创建变量。添加一个before_filter
来调用执行该操作的方法。