7

我正在努力实施 CanCan。出于某种原因,当我尝试获取有关模型权限的具体信息时,CanCan 不断给我拒绝访问。我不知道为什么。

有没有办法让 CanCan 变得具体,也许在日志或开发中关于为什么访问被拒绝?类似,没有读取能力到 XXX 模型。

这将有助于调试。

谢谢

4

3 回答 3

5

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

于 2010-11-03T20:49:39.093 回答
1

您可以在您的能力模型中添加一些输出,并在您的能力失败或不能失败后检查。

或者,您可以在能力课程开始时添加调试器会话。

于 2010-11-03T17:06:56.847 回答
1

你可以做:

# 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

于 2015-11-10T08:12:16.923 回答