PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Ruby-Migration rückgängig gemacht, aber Fehler beim erneuten Ausführen der Migration

In Ihrem up Methode, die Sie erstellen, Spalte auf questionaries Tabelle, und in Ihrer Down-Methode entfernen Sie sie aus pnp_questionaries . Spalte entfernen löst keine Ausnahme aus, wenn die Tabelle nicht existiert, daher haben Sie Ihr Problem.

Einfachste Lösung:

  1. Kommentieren Sie add_column aus von oben.
  2. Migrationen ausführen (ja, leere Migration ausführen).
  3. Reparieren Sie Ihren down Methode zum Entfernen von questionaries Tabelle.
  4. Rollback-Migration.
  5. Entkommentieren Sie Ihr up Methode.

UPDATE:

Mein Fehler - Punkt 3 sollte 'Spalte aus Fragebögen entfernen' sein, nicht 'Tabelle entfernen'.

Sie müssen die Migration, die die Tabelle erstellt hat, erneut ausführen (hoffentlich haben Sie sie in der Zwischenzeit nicht geändert). Gehen Sie zur angegebenen Migration, kommentieren Sie down aus method body und führen Sie rake db:migrate:redo VERSION=xxxxxxx aus wobei xxxxxx ist der Zeitstempel in diesem Migrationsdateinamen.