【发布时间】:2014-02-11 21:55:19
【问题描述】:
我将 ActiveAdmin 与 Can Can gem 一起使用,我遇到了以下情况:
- 两个角色:admin、other。
- 包含三个链接的管理员标题:link1 |链接2 |链接3
- 链接 3 代表视频资源。
- 管理员用户可以看到链接 1、2 和 3
- 其他用户可以看到链接 1 和 2,但不能看到 3
所以,要让link 3消失。我可以有一个 abilities.rb 文件:
can :manage, Video #for admin users
其他用户什么都没有。这将使 link 3 消失。 但是,在我的应用程序的其他部分,我希望 其他 用户能够“阅读视频”。当我添加此功能时,链接再次出现在标题中。
问题是:我怎样才能保存我的:
can :read, Video #for other users
同时消失链接3?
【问题讨论】:
-
如果用户有权查看该资源,为什么您希望菜单链接丢失?
-
这是客户要求。 “其他”用户可以从应用程序端分析视频,但客户端不希望这些用户从管理端看到视频(是的,“其他用户”可以在管理端访问其他东西)。我只是不希望活动管理员根据定义的能力自动添加链接。
标签: ruby-on-rails ruby-on-rails-3 permissions activeadmin cancan