在我的新项目中,我有一个资源赌注,其他用户只有在赌注的所有者或他的朋友时才能阅读。主要问题出现在我想定义索引操作的能力时。在索引操作中,块不会被执行,所以我想这不是一个选项。CanCan,嵌套资源和使用方法
让我们来说明一下。如果我想只有所有者才能够索引的赌注,这将是不够的:
can :read, Bet, :user => { :id => user.id }
但我需要在可接受的IDS是一个范围,一个用户的所有朋友定义。类似于:
if (bet.user == user) || (bet.user.friends.include? user)
can :read, Bet
end
但这是不正确的CanCan语法。
我想很多人都遇到过CanCan和嵌套资源的问题,但我仍然没有看到任何答案。
它不工作。能力块中的条件不用于像索引这样的动作。 – Gawyn 2012-07-18 14:23:58
你是对的,我没有仔细阅读你的问题:( 我会再给你一个建议...... – 2012-07-18 14:43:27