CanCan的一些问题

时间:2010-07-06 18:15:07

标签: ruby-on-rails authorization cancan

(抱歉我的英文;)

我开始从rbates使用CanCan,这是很棒的宝石,但我有一些问题: 我有Scrap模型,并且有布尔字段:已发布(因此,它表示已发布/未发布(草稿))。

我的能力中有这个规则.rb:

can :create, [Scrap]
can [:update, :destroy], [Scrap] do |object|
  object.try(:user) == user
end

因此,非作者无法编辑/更新/删除此对象。我想对我的“节目”动作做同样的事情(非作者不能阅读草稿,真的吗?;)这样做的真正方法是什么?

Thanx all! 安德烈奥格涅夫斯基

1 个答案:

答案 0 :(得分:2)

can :show, Scrap do |scrap|
  scrap.published || scrap.user == user
end