0
我希望允許管理員使用自定義字段創建帖子,但仍希望他們使用與普通用戶使用的相同的創建操作。定義cancan中的無用功能?
我認爲要做到這一點:
class Ability
include CanCan::Ability
def initialize(user)
if user.admin?
can :specialize, Post
end
end
end
然後在我的控制器:
def create
@post = Post.new
if can? :specialize, @post
do_fancy_things_here
end
end
奇怪的是,do_fancy_things_here如何,始終會的,如果用戶是管理員還是沒有運行。
這很奇怪。我偏離康康手冊的唯一方法是:專門化並不實際映射到控制器操作。這很重要嗎?
我很好奇,如果你改變你的if語句:'如果能? :specialize,Post',你還會得到同樣的東西嗎? – Max 2012-01-27 05:52:49
是啊同樣的事情= / – 2012-01-28 05:20:26