您可以current_user
使用以下方式从视图或控制器获取 ' 权限can?
:
<% if can? :update, @article %>
<%= link_to "Edit", edit_article_path(@article) %>
<% end %>
如何使用以下语法从模型访问此功能:
user.can?(:update, @article)
您可以current_user
使用以下方式从视图或控制器获取 ' 权限can?
:
<% if can? :update, @article %>
<%= link_to "Edit", edit_article_path(@article) %>
<% end %>
如何使用以下语法从模型访问此功能:
user.can?(:update, @article)
github 上有一个 wiki 条目:https ://github.com/ryanb/cancan/wiki/ability-for-other-users
您需要像这样更改您的用户模型:
class User < ActiveRecord::Base
def ability
@ability ||= Ability.new(self)
end
delegate :can?, :cannot?, :to => :ability
end
然后你可以像这样检查能力:
user.can?(:update,@article)