作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的路由器中有一个命名空间,如下所示:
namespace :my do
resources :addressbookitems
end
在 controllers/my/addressbookitems_controller.rb
中,例如,我有操作 index
和 show
。
我想根据命名空间以不同方式限制我的用户可访问的资源:如果他们访问 /addressbookitems
我想拥有与 /my/addressbookitems
不同的能力>。我将如何构建我的 Ability 类?
最佳答案
对于普通康康舞,我认为唯一的选择是覆盖所有行为:
can do |action, subject_class, subject|
# custom logic to allow or deny permission
end
他们在这里展示了一个例子:https://github.com/ryanb/cancan/wiki/Abilities-in-Database
另一个选项是使用 cancan_namespace
gem:https://github.com/galetahub/cancan_namespace
关于ruby-on-rails - 设计、康康和命名空间路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7761429/
我在 Ubuntu 12.04 LTS (GNU/Linux 3.2.0-23-generic x86_64) 上运行 CKAN 2.2。 我已将数据集上传到 CKAN 实例。已经上传成功,可以下载了
我在应用程序 Controller 中使用“检查授权”,因此每个操作都需要许可。我首先授予我 super 管理员 :=] 管理所有权限。我认为管理所有可以让我在不命名资源的情况下访问整个应用程序。 用
我是一名优秀的程序员,十分优秀!