问题描述
控制器.rb
load_and_authorize_resource
# GET /orders or /orders.json
def index
if params[:user_id]
@orders = current_user.orders
else
@orders = Order.all
end
end
能力.rb
if user.user_role?
can :manage,Order,:user_id => user.id
end
试图让普通用户只能看到自己的订单/帖子,而管理员角色的用户可以看到所有用户的帖子/订单。
我错过了什么?我正在使用 cancancan 和 devise。
解决方法
我想通了:
def index
if current_user.superadmin_role?
@orders = Order.all
else
@orders = current_user.orders
end
end