如果我有不同用户的许多模型来管理它们。
用户A负责CAR,ORDER,SHIP
用户B负责PLANE,ORDER
每个用户都应该只修改他们可以使用的模型。
如何在active_admin上执行此操作?
有哪些文章可以参考?
由于
答案 0 :(得分:0)
CanCan是Ruby on Rails的授权库,它限制了允许给定用户访问的资源。所有权限都在一个位置(Ability类)中定义,并且不会跨控制器,视图和数据库查询重复。
https://github.com/CanCanCommunity/cancancan
您还需要一些角色管理员:https://github.com/RolifyCommunity/rolify
所以你可以写一下ability.rb:
if current_admin_user.has_role? :roleA
can :manage Car, Order, Ship
elsif current_admin_user.has_role? :roleB
can :manage, Plane, Order
end