Vous pouvez obtenir une erreur avec les rails db: migrate. Dans mon cas, j'obtiens une sorte d'erreur pour une raison quelconque, alors j'ai essayé de savoir comment y faire face. (Je suis moi-même un débutant en rubis et en rails. J'écris cet article pour mon apprentissage, en espérant qu'il sera utile pour les débutants.)
== 20201011010946 CreatePosts: migrating ======================================
-- create_table(:posts)
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:
PG::DuplicateTable: ERROR: relation "posts" already exists
(à suivre)
En ce qui concerne cette erreur standard, j'ai exécuté migrate, mais une erreur s'est produite lors de l'exécution pour une raison quelconque, et la table est créée mais la situation de migration est traitée comme non exécutée.
En d'autres termes, je pense que j'ai l'impression d'avoir été interrompu par une petite erreur du côté du système.
Cependant, l'instruction d'erreur dit /post_bootstrap_app/db/migrate/20201011010946_create_posts.rb:3:in `change'comme s'il y avait une erreur là-bas, en disant:" Je déconne avec ça? Cela devient un état et est confus pendant un moment.
rails db:migrate:reset
* Réinitialisez l'exécution de la migration une fois
rails db:migrate
* Rails db à nouveau:Exécuter migrer
J'ai essayé de savoir comment y faire face, mais j'ai décidé que la migration interrompue n'était pas réinitialisée une fois, et si j'essaye à nouveau avec migrate, cela fonctionnera, j'ai donc essayé cette méthode. C'était.
Du coup, j'ai réussi dans db: migrate comme si de rien n'était!
Je pense que certains débutants sont confus lorsqu'une erreur se produit lors de la création d'une base de données salée, "Pourquoi est-ce une erreur même si je n'ai pas encore beaucoup écrit?".
Cependant, cette méthode simple peut résoudre le problème, donc si vous avez des problèmes, essayez-la. J'espère que cela vous aidera.
Recommended Posts