我有一个使用 Cancan 进行授权的 Rails 3 应用程序。我的应用程序中有以下逻辑:管理员有权管理所有其他用户,并已can :manage, User
在功能文件中设置。公司所有者有权管理其公司下的所有用户,并已can :manage, User, company_id: user.company_id
在权限文件中进行了设置。
在我的UserController#index
中,如果用户有权管理所有其他用户,我需要调用一种方法,如果用户只能访问他公司的用户,我需要调用另一种方法。有没有办法用 CanCan 做到这一点?