我正在使用 rails_admin、devise 和 cancan。
用户有很多角色。
我设置了一个管理页面,具有管理员角色的用户可以在其中管理用户。但是,管理员无法管理角色。
创建或编辑用户时,不会列出角色。
如何允许管理员在不让他们编辑或创建角色的情况下向用户添加角色?
这是我的能力档案
class Ability
include CanCan::Ability
def initialize user
if user && user.admin?
can :access, :rails_admin
can :dashboard
cannot :manage, Role
can :manage, User
else
cannot :access, :rails_admin
end
end
end
我尝试在 rails_admin 配置中显式覆盖关联范围,但这根本没有帮助:
field :role do
associated_collection_scope do
Proc.new do |scope|
scope = scope
end
end
end