1

对不起我的英语......我正在使用cancan gem,但是当我做这样的事情时我遇到了新动作的问题......

class Ability
  include CanCan::Ability
  def initialize(user)
    can :manage, Post, :id => 1
  end
end

新的动作控制器没有 ID,因此我无权创建新帖子:(

一些帮助?问候。

4

1 回答 1

0

新操作...没有 ID...我无权创建新帖子

load_resource在你的控制器中使用吗? load_resource将应用您的能力定义中的条件。请参阅授权控制器操作

另外,你的能力定义很奇怪。更常见的说法是:用户可以管理自己的帖子,每个人都可以阅读。

def initialize(user)
  can :read, Post
  can :manage, Post, :user_id => user.id
end
于 2013-06-02T18:46:19.060 回答