Канкан - доступ запрещен - способ сделать Cancan указать в журнале Почему?

StackOverflow https://stackoverflow.com/questions/4089219

Вопрос

Я работаю над реализацией Канкана. По какой-то причине Cancan продолжает давать мне доступу отказано, когда я пытаюсь получить конкретные о возможностях разрешений. И я не могу понять, почему.

Есть ли способ получить канканский быть конкретным, возможно, в журналах или в развитии о том, почему доступ запрещен? Что-то вроде, нет чтения способности к XXX модели.

Это было бы полезно для отладки.

Спасибо

Это было полезно?

Решение

Вы можете добавить rescue_from Блокируйте в ApplicationController, чтобы обрабатывать исключения CANCAN, и установить пользовательское сообщение об ошибке там. Увидеть Cancan Docs. для подробного объяснения.

Другие советы

Вы можете добавить некоторые вывод в модели вашей способности и проверять после чего можно или не удалось или не удалось.

Или вы можете добавить сеанс отладчика в начале вашего класса услуг.

Ты можешь сделать:

# 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-

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top