Domanda

Sono in procinto di aggiornare un progetto Rails 3, che utilizza Devise per l'autenticazione, a un motore montabile Rails 3.1. Dopo l'aggiornamento, Devise non sembra essere inizializzato correttamente, sollevando un NameError:

uninitialized constant Devise (NameError)

Questo problema del 2010 , che suggerisce incompatibilità quando si utilizza Devise al di fuori di una normale applicazione ambiente:

Probabilmente quando non lo stai eseguendo da solo, Devise non è richiesto.

Questo problema più recente entra nello specifico, tuttavia non riguarda il mio effettivo problema (forse non ancora).

Non capisco bene da dove venga. Molte delle mie dipendenze, come CanCan e Compass, hanno iniziato a darmi errori all'avvio dopo l'aggiornamento. Erano tutti method missing, uninitialized constant e simili. Ho colto questa possibilità per eliminarli o sostituirli con un'alternativa più moderna. Forse non avrei dovuto.

Qualcuno sa come risolvere questo problema?

È stato utile?

Soluzione

Ha risolto il problema richiedendo esplicitamente le mie dipendenze prima della definizione del modulo del mio motore.

require 'devise'
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top