【发布时间】:2016-01-30 18:01:35
【问题描述】:
我正在使用 CanCanCan gem 开发 Rails 4.2 应用程序。我有我的能力.rb 课程。我正在按照 gem 文档中的说明进行单独的角色模型,并按照说明进行角色继承。
class Ability
include CanCan::Ability
def initialize(user)
user ||= User.new # guest user (not logged in)
user.roles.each { |role| send(role.name.downcase) }
end
# write down role permissions here
def client
can :manage, Client, :id => user.id
can [:read,:create], Patient
end
end
基本上每个角色都是我想在 user.role.each 块中调用的方法。我不完全理解它的作用。我需要的是能够访问角色方法中的用户变量,就像在 def 客户端示例中一样。使用户全球化是一种解决方案。或者有什么好的解决办法?
【问题讨论】:
标签: ruby-on-rails ruby cancancan