我有两种用户:工人和管理员。我有一张工人表和一张管理员表。我想强制用户登录,然后才能进入应用程序页面。所以我在下一行添加了我的 ApplicationController:
`before_filter :authenticate_user!`
现在,我写了一个函数,叫做:is_worker
检查是否在workers表中找到了用户。如果是这样,将他重定向到工人的页面。如果找不到用户,将他重定向到管理页面。
我希望工作人员无法进入管理页面,管理员也无法进入工作人员页面。
所以我想我应该添加: before_filter :is_worker
to:workerscontroller
和adminscontroller
.
class ApplicationController < ActionController::Base
protect_from_forgery
before_filter :authenticate_user!
def is_worker
@email = current_user.email
tag = Worker.where(:email => @email)
if tag.nil?
redirect_to '/admins'
else
redirect_to '/workers'
end
end
end
如果我错了,请纠正我。