Rails,康康康的能力
Rails, abilities with cancancan
我正在使用 cancancan 来定义我的演示餐厅应用程序的功能。每个餐厅 has_many 名员工和每个员工都有 user_id 和 role 属性。我想允许用户编辑餐厅 仅当 这家餐厅有一名员工 user_id 作为 current_user.id 并且他的角色是 'manager' .我的问题是这个角色可以分配给很多员工,当我通过
找到他们时
can :edit, Restaurant do |restaurant|
restaurant.employees.where(role: 'Manager').id=user.id
end
我会得到所有经理的数组,但此代码不会 return 正确。关于如何实现这个的任何想法:?谢谢!
您可能正在寻找更像这样的东西:
can :edit, Restaurant do |restaurant|
restaurant.employees.where(role: 'Manager', user_id: user.id).exists?
end
我正在使用 cancancan 来定义我的演示餐厅应用程序的功能。每个餐厅 has_many 名员工和每个员工都有 user_id 和 role 属性。我想允许用户编辑餐厅 仅当 这家餐厅有一名员工 user_id 作为 current_user.id 并且他的角色是 'manager' .我的问题是这个角色可以分配给很多员工,当我通过
找到他们时can :edit, Restaurant do |restaurant|
restaurant.employees.where(role: 'Manager').id=user.id
end
我会得到所有经理的数组,但此代码不会 return 正确。关于如何实现这个的任何想法:?谢谢!
您可能正在寻找更像这样的东西:
can :edit, Restaurant do |restaurant|
restaurant.employees.where(role: 'Manager', user_id: user.id).exists?
end