cancan 和命名空间 - 如何更改“current_user”到当前配置文件
我有模型配置文件而不是用户,当我尝试这样做时:
<% if can? :update, @article %>
<%= link_to "Edit", edit_article_path(@article) %> |
<% end %>
我收到错误: 未定义的局部变量或方法 `current_user' for #
我也在使用命名空间 Admin,所以我有 http://localhost:3000 /admin/profile 等等。 您能告诉我如何更改默认设置吗?我尝试将:
def current_ability
@current_user ||= Ability.new(current_profile)
end
放在 application_controller.rb 中,但仍然不起作用。
I have model profile instead of user and when I`m trying to do sth like that :
<% if can? :update, @article %>
<%= link_to "Edit", edit_article_path(@article) %> |
<% end %>
I got en error:
undefined local variable or method `current_user' for #
I am also using namespace Admin, so I have http://localhost:3000/admin/profile and so on.
Can you please tell me how to change defaults settings ? I have tried to put:
def current_ability
@current_user ||= Ability.new(current_profile)
end
in application_controller.rb, but still doesnt work.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
根据 https://github.com/ryanb/cancan/wiki/Changing-Defaults 我认为应该是:
需要命名为@current_ability。
According to https://github.com/ryanb/cancan/wiki/Changing-Defaults I think it should be:
It needs to be called @current_ability.