Ruby on rails rails cancan gem,,can-method-in-ability.rb如何使用
我正在使用cancan gem,但我有点困惑。 区别是什么:Ruby on rails rails cancan gem,,can-method-in-ability.rb如何使用,ruby-on-rails,cancan,Ruby On Rails,Cancan,我正在使用cancan gem,但我有点困惑。 区别是什么: can :read, Post can :read, :post can :read, @post 更好(安全)的方法是什么 指示用户可以阅读任何帖子,因为它通常引用模型 can :read @post can :read :post 指示用户可以阅读该特定文章(通常是因为该文章与用户或类似的内容有关联) 如何设置您的能力页面的示例: if user.admin? can :read Post #admin can
can :read, Post
can :read, :post
can :read, @post
更好(安全)的方法是什么
指示用户可以阅读任何帖子,因为它通常引用模型
can :read @post
can :read :post
指示用户可以阅读该特定文章(通常是因为该文章与用户或类似的内容有关联)
如何设置您的能力页面的示例:
if user.admin?
can :read Post #admin can read any post
else
can :read Post, :user_id => user.id #non-admins can read only posts that belong to them.
end
我从未见过@post或:post被用来定义能力。通常,在检查用户是否可以对模型的特定实例执行操作时,使用控制器或视图中的这些选项。例如,如果(可以?:阅读@post)。。。我在官方文件和
if user.admin?
can :read Post #admin can read any post
else
can :read Post, :user_id => user.id #non-admins can read only posts that belong to them.
end