Канкан - доступ запрещен - способ сделать Cancan указать в журнале Почему?
-
28-09-2019 - |
Вопрос
Я работаю над реализацией Канкана. По какой-то причине 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-