Quindi, anche se non mi piace farlo, un modo semplice per impedire l'inizializzatore di funzionare durante DB: Migrate, ma l'esecuzione di Applicazione di inizio o test è quello di avvolgerlo in una clausola se la tabella esiste. Quindi, se prendi il tuo codice iniziale esistente e lo avvolgi
if ActiveRecord::Base.connection.table_exists? 'table_name'
....
end
Laddove "Table_name" è il nome della tabella mancante, quindi entrambi i rastrelli DB: migra e l'esecuzione delle specifiche dovrebbero essere in grado di completare correttamente.