CanCan - 为什么可以:当我不调用create时创建规则运行?

时间:2011-02-11 19:09:10

标签: ruby-on-rails ruby-on-rails-3 cancan

我的ability.rb文件中包含以下内容:

can :create, ThreadParticipation do |participation|
  Rails.logger.info 'XXXXXXX'
end

奇怪的是,当我调用ThreadParticipation.new时,该规则正在淘汰,我看到了记录器输出?

为什么会这样:当我正在做的时候创建运行.new

谢谢

1 个答案:

答案 0 :(得分:1)

create是new + create操作的别名。 这样做是为了模拟C-R-U-D行为。 所以,

:create = :new + :create
:read = :index + :show
:update = :edit + :update
:destroy = :destroy

另外,

:manage = :create + :read + :update + :destroy