(抱歉我的英文;)
我开始从rbates使用CanCan,这是很棒的宝石,但我有一些问题: 我有Scrap模型,并且有布尔字段:已发布(因此,它表示已发布/未发布(草稿))。
我的能力中有这个规则.rb:
can :create, [Scrap]
can [:update, :destroy], [Scrap] do |object|
object.try(:user) == user
end
因此,非作者无法编辑/更新/删除此对象。我想对我的“节目”动作做同样的事情(非作者不能阅读草稿,真的吗?;)这样做的真正方法是什么?
Thanx all! 安德烈奥格涅夫斯基
答案 0 :(得分:2)
can :show, Scrap do |scrap|
scrap.published || scrap.user == user
end