declarative_authorization上的if_attribute语法问题
我有一个拥有多个联盟的组织和一个拥有组织的使命
所以我可以这样做:
m = Mission.first m.organization.affiliations
用户也有很多从属关系,所以我可以这样做:
u = User.first u.affiliations
在declarative_authorization中,如果用户隶属于任务组织,我希望用户能够管理任务。
我正在尝试这个:
has_permission_on :missions, :to => [:manage] do if_attribute [:affiliations, {:mission => :organization} ] => intersects_with { user.affiliations.type_admin } end
但我得到错误:
[:affiliations, {:mission=>:organization}] is not a symbol
语法有什么问题?
我认为这可能对你有用
has_permission_on :missions, :to => [:manage] do if_attribute :organization => { :affiliations => intersects_with { user.affiliates.type_admin } } end