[RUBY] Erreur PG :: DatatypeMismatch lors de l'exécution de heroku run rails db: migrate

contenu de l'erreur

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

On m'a dit que la colonne complète ne peut pas être automatiquement convertie en un entier.

La cause est


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

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

J'ai changé de type booléen en type entier dans change_column, mais une erreur s'est produite car j'ai essayé de changer en entier avec false dans la colonne complète par défaut.

Supprimez donc les fausses données dans la colonne complète et rails db: migrate: reset

C'est une solution sûre

Recommended Posts

Erreur PG :: DatatypeMismatch lors de l'exécution de heroku run rails db: migrate
[heroku] run rails db: la migration ne fonctionne pas
Après tout, que fait [rails db: migrate]?
rails db: échec de la migration!
Erreur dans la base de données: migrate: reset
Erreur lors de l'utilisation des rails capybara
[Rails] Que faire lorsque l'erreur Aucune base de données sélectionnée et Base de données inconnue apparaît dans db: migrate
Erreur de base de données concernant le déploiement à l'aide d'Heroku
[Rails] Modifier le fichier de migration (rails db: rollback)
[Rails] Modifier le fichier de migration (rails db: rollback STEP =)
[Rails / Heroku] Procédure de résolution d'erreur après push