can :manage, Widget
can :manage, Widget, :user_id => user.id
答案 0 :(得分:0)
总的来说?
can? :manage, Widget
如果您指的是现有记录的某些检查,这听起来像是一个设计缺陷,但这应该有效。请注意,如果这是您正在采取的方法,则在进行此检查后,您将遇到竞争条件并创建其他Widget
条记录。
(can? :manage, Widget) || (Widget.count == Widget.count(:conditions => ["user_id == ?", current_user.id]))