2010-11-03 13 views
7

Estoy trabajando para implementar CanCan. Por algún motivo, CanCan sigue dando acceso denegado cuando trato de obtener información específica sobre los permisos del modelo. Y no puedo entender por qué.CanCan - Acceso denegado - Forma de hacer CanCan Especifique en el LOG ¿Por qué?

¿Hay alguna manera de que CanCan sea específico, quizás en los registros o en el desarrollo sobre por qué se deniega Access? algo así como, No se puede leer el modelo XXX.

Eso sería útil para la depuración.

Gracias

Respuesta

5

Puede agregar un bloque rescue_from en ApplicationController para manejar las excepciones de CanCan y establecer allí su mensaje de error personalizado. Vea el CanCan docs para una explicación detallada.

1

Usted puede agregar un poco de salida en su modelo de habilidad y de verificación después de lo que puede o no puede fallado su capacidad.

O puede agregar una sesión de depuración al inicio de su clase de habilidad.

0

Usted puede hacer:

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

Más información en la página web del proyecto:

Cuestiones relacionadas