我在设计方面有两个角色。第一个是admin,第二个是普通用户角色。 现在我想在某些情况下给这两个组提供与过滤器之前相同的权利。
这是如何运作的?
我有:
before_filter :authenticate_user!, :only => [:new, :create]
before_filter :authenticate_admin!, :only => [:new, :create, :edit, :update, :destroy]
但现在只有一个用户可以:new和:创建...管理员不.. 我在这里要做什么?
谢谢, Mattherick
答案 0 :(得分:3)
我还没有亲自使用过Devise,所以这只是为了指出你正确的方向。它可能无法正常工作。
before_filter :authenticate_user_or_admin, :only => [:new, :create]
before_filter :authenticate_admin!, :only => [:edit, :update, :destroy]
# ...
protected
def authenticate_user_or_admin
unless user_signed_in? or admin_signed_in?
# Redirect somewhere else
end
end