Sembra che sia vero quanto segue:
20120525005302_create_users.rb
tenterà di creare unusers
tabella nel database.20120611000411_devise_create_users.rb
tenterà anche di creare unusers
tabella nel database.- Il tuo database ha già un
users
tabella al suo interno, quindi la migrazione non riesce alla seconda migrazione.
Per ottenere gli users
tabella nel database in modo che corrisponda correttamente a 20120611000411_devise_create_users.rb
migrazione, puoi fare una di queste due cose:
- Ripristina (o elimina) il database, quindi esegui di nuovo le migrazioni. (Puoi eliminare il
20120525005302_create_users.rb
se è vuoto.) - Modifica il tuo
20120611000411_devise_create_users.rb
migrazione per eliminare tutti gliusers
esistenti tabella prima di fare qualsiasi altra cosa. - Modifica il tuo
20120611000411_devise_create_users.rb
migrazione come segue:- Invece di creare un
users
tabella, modifica la tabella esistente. - Aggiungi e modifica i componenti del database in modo che corrispondano
- Invece di creare un
In genere, se l'applicazione è in uno "stato iniziale", la ricreazione del database tende a essere un modo rapido per creare la struttura iniziale di un'applicazione. Tuttavia, se hai già dati importanti nei tuoi users
tabella, ti consigliamo di conservarla e procedere modificando il 20120611000411_devise_create_users.rb
migrazione per modificare il database in modo non distruttivo.
Riferimenti