[RUBY] PG :: DatatypeMismatch-Fehler beim Heroku-Ausführen von Rails db: migrate

Fehlerinhalt

PG::DatatypeMismatch: ERROR: default for column "complete" cannot be cast automatically to type integer

Mir wurde gesagt, dass die gesamte Spalte nicht automatisch in eine Ganzzahl konvertiert werden kann.

Die Ursache ist


 def up
    change_column :habits, :complete, :integer, using: 'complete :: integer'
  end

  def down
    change_column :habits, :complete, :boolean, default: false, null: false
  end
end

Ich habe in change_column vom booleschen zum Integer-Typ gewechselt, aber es ist ein Fehler aufgetreten, weil ich versucht habe, standardmäßig in der Complte-Spalte in Integer mit false zu wechseln.

Löschen Sie also die falschen Daten in der Spalte complte und rails db: migrate: reset

Dies ist eine sichere Lösung

Recommended Posts

PG :: DatatypeMismatch-Fehler beim Heroku-Ausführen von Rails db: migrate
[heroku] run rail db: migrieren funktioniert nicht
Was macht [Rails DB: Migrieren]?
Schienen db: Migration fehlgeschlagen!
Fehler in db: migrate: reset
Fehler bei der Verwendung von Schienen Capybara
[Rails] Was tun, wenn der Fehler Keine Datenbank ausgewählt und Unbekannte Datenbank in db: migrate angezeigt wird?
DB-Fehler bei der Bereitstellung mit Heroku
[Rails] Migrationsdatei ändern (Rails DB: Rollback)
[Rails] Migrationsdatei ändern (Rails db: rollback STEP =)
[Rails / Heroku] Fehlerbehebungsverfahren nach dem Drücken