CanCan - 访问被拒绝 - 如何让 CanCan 在日志中指定原因?

7
我正在实施CanCan。但是当我试图具体设置模型权限时,CanCan总是给我“拒绝访问”的错误。而且我无法弄清原因。
有没有办法让CanCan更具体,在日志或开发中说明为什么被拒绝访问?类似于“没有对XXX模型的读取权限”。
这将有助于调试。
谢谢。
3个回答

5
您可以在ApplicationController中添加一个rescue_from块来处理CanCan异常,并在那里设置您的自定义错误消息。详细说明请参见CanCan文档

1
你可以在你的 Ability 模型中添加一些输出,然后检查你的能力失败的原因。
或者你可以在你的能力类开始处添加一个调试器会话。

0

你可以做:

# in ApplicationController
rescue_from CanCan::AccessDenied do |exception|
  Rails.logger.debug "Access denied on #{exception.action} #{exception.subject.inspect}"
  # ...
end

更多关于该项目的信息,请访问主页:https://github.com/ryanb/cancan/wiki/Debugging-Abilities


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接