Ho erroneamente eseguito il secondo all'ultimo errore di migrazione db, ma l'ultima migrazione va bene. Ora voglio ripristinare la penultima migrazione senza ripristinare l'ultima migrazione. Per favore condividi le tue conoscenze con me e con gli altri.Ripristinare una migrazione specifica senza eseguire il rollback di altre migrazioni
risposta
È possibile utilizzare rake db:migrate:down VERSION=xxxxx
dove xxx è il numero di versione di migrazione per più see this
rake db:migrate:down VERSION=20140804301246
penso di far ritirare il comando fino che la migrazione, e eliminare tale la migrazione poi ha fatto di nuovo tutto il lavoro con attenzione, conosco il suo approccio negativo ma funzionerà? – Awais
Questo è anche un modo per farlo :). Ma devi stare attento se il codice è condiviso con altri sviluppatori. – Santhosh
grazioso, grazie @santosh – Awais
È possibile specificare il file di migrazione version number
a rollback
che la migrazione.
si può raggiungere da uno di questi
rake db:migrate:down VERSION=your_file_version
O
rake db:rollback:up VERSION=your_file_version
penso di eseguire il comando di rollback fino a quella migrazione ed eliminare quella migrazione, quindi ho fatto di nuovo tutto il lavoro con attenzione, conosco il suo approccio negativo ma funzionerà? e grazie @pavan – Awais
@m_Awais Se hai eseguito erroneamente solo questa migrazione, puoi semplicemente eseguire il rollback e apportare le modifiche necessarie correttamente e migrare nuovamente. – Pavan
super, grazie :) – Awais
semplice risposta che ho trovato è
rake db:rollback STEP=X
dove X è il numero di migrazioni che si desidera giocare con (rollback). COME
rake db:rollback STEP=3
http://stackoverflow.com/questions/3647685/rails-3-how-to-roll-back-a-migration-file –