我使用activeadmin gem http://activeadmin.info/创建了一个管理页面, 我使用cancan 来授权2 种用户的权限,用户管理和图书管理用户。
我的问题是:当书籍管理用户登录到管理页面时,我如何隐藏资源用户?
我尝试了类似的方法,但没有用
menu false if can? :manage, BookHeader
或者
menu false if authorize! :manage, BookHeader
谢谢你的帮助!
我使用activeadmin gem http://activeadmin.info/创建了一个管理页面, 我使用cancan 来授权2 种用户的权限,用户管理和图书管理用户。
我的问题是:当书籍管理用户登录到管理页面时,我如何隐藏资源用户?
我尝试了类似的方法,但没有用
menu false if can? :manage, BookHeader
或者
menu false if authorize! :manage, BookHeader
谢谢你的帮助!
您必须使用 proc 动态构建菜单
例子
动态标签
menu :label => proc{current_admin_user.admin? ? "Accounts" : "My Account"}
显示/隐藏
menu :if => proc{ can?(:manage, BookHeader ) }
有关集成 AA 和 CanCan 的更多信息,请阅读本文
https://github.com/gregbell/active_admin/wiki/How-to-work-with-cancan
我用这个:对我来说是adminuser的 用户,none admin user的密码
menu label: proc{I18n.t "#{current_user.is_admin? ? 'users':'password'}"}
按照你的例子
menu label: proc{I18n.t "#{current_admin_user.admin? ? 'Accounts' : 'My Account'}"}
会有所帮助