0
我利用Active Admin内AdminUsers中的角色,并使用CanCan定义跨不同资源的访问。ActiveAdmin和CanCan
它在限制访问方面运行良好,但我遇到了隐藏基于角色的菜单的麻烦。
按照ActiveAdmin文档,下面应该工作:
menu :if => proc{ can?(:manage, AdminUser) }
在我ability.rb模型文件,我有
case user.role
when "admin"
can :manage, :all
cannot :manage, Company
when "manager"
can :manage, Program
can :manage, Client
我甚至增加不能:管理,管理用户下的经理以便明确说明它。
我想以“manager”角色登录时隐藏AdminUser菜单。目前,它仍然显示给该用户,但如果我点击它,它正确地告诉我,我没有被授权。