check_authorization fa fallire il controller di devise personalizzato?
sfondo
Ho una semplice app con devise e cancancan. Poiché volevo aggiungere un po 'di logica personalizzata al processo di registrazione , ho usato devise con controller personalizzati , il che significa semplicemente che devise usa il controller degli utenti (piuttosto che devise controller) per tutte le cose che fa devise.
Problema
Quando aggiungo check_authorizational controller dell'applicazione ea skip_authorization_checktutti i controller dell'utente (devise), ricevo ancora il seguente errore quando l'utente tenta di accedere o disconnettersi:
Domanda
Qualcuno sa come skip_authorization_checkper questi controller? (Ho già skip_authorization_checkin ogni utente (devise) controller, ho pensato che lo avrebbe fatto, quindi non sono sicuro di cosa provare
Risposte
Ho trovato la risposta al 90% durante la scrittura di questa domanda, quindi ho pensato di pubblicarla nel caso in cui aiutasse altri in futuro.
La risposta è: usa semplicemente lo stesso metodo per saltare i controlli di autorizzazione su devise in modo regolare (anche se usi controller di devise personalizzati), cioè aggiungilo semplicemente ad application_controller
check_authorization unless: :devise_controller?
L'aggiunta skip_authorization_checkmanuale a ciascun controller di dispositivo (o dispositivo personalizzato) non sembra necessario quando si utilizza questo approccio.