Допустим, вы пишете программное обеспечение для Blogger.
Каждый пользователь может создать сообщение в блоге, только если он является владельцем блога. CanCan обычно определяет проверку способностей в этом случае как:
user.can? :create, Post
Однако пользователь может создать сообщение только в том случае, если он является владельцем текущего блога, и нет возможности ссылаться на текущий блог, используя только его имя класса. Что мне действительно нужно уметь делать, так это:
user.can? :create, Post, @current_blog
чтобы в определениях канкана я мог сказать
can :create, Post do |post, blog|
user == blog.owner
end
Возможно ли это, или я не понимаю, как я к этому подхожу?