db:migrateが効かなかった時の対処法B!本番環境でのmigrateが効かない原因は多種多様だろうけど、当記事のケースはまず間違いなく汎用性というか普遍性が低いと思う。僕が不良行為を働いていたことに起因する。exist(略めっちゃ怒られた。マイグレーションできなかった。主要な箇所を書き出すなら、明らかにこの部分。exist要は「あるテーブル(comments)のリレーション先のテーブル(topics)がないよ」ということ。db:migrate:resetしていたことだろう。db:migrateをするとcommentsテーブル作成されるtopicsテーブル作成されるcommentsテーブルにtopicsテーブルへのリレーションのカラム追加されるといった順序で処理が行われ、これであれば正常に通る。topicsテーブルへのリレーションカラム作成topicsテーブル作成という流れになっており、topicsテーブルがない状態ながらcommentテーブルにtopicsテーブルへのリレーションカラムを追加しようとしてしまったために出てしまったエラーなのかなと推測した。マイグレーションファイルの並び順をこのエラーが出ないようにソートすれば良いんじゃないかと考えた。(というか普通に規約とか慣習に沿えば良かっただけという話。教訓になった)というわけでmigrateディレクトリの中のファイルをソートしていく。migrateでは作成された日時がファイル冒頭につくため、これを変更した。元は20190720075110_create_comments.rb20190720081148_create_topics.rbという並びで、これだと数字の若いcommentファイルから先に実行されてしまうためこれをtopicファイルの後に持っていくために数字を入れ替えた。するとうまいこと20190720075110_create_topics.rb20190720081148_create_comments.rbという並び順に。db:migrateを実行。無料のWordPressテーマです。✒️たかさきしがないたかさきです。HTML/CSS/JS/PHP/Ruby/SQLちょっと書けます、Photoshopちょっと使えます。Vue勉強中、埼玉とか都内の勉強会良いのあれば教えてください〜。メディア売買経験あります、ミドルレベルでの検索結果1位何回か取ったことあります。キャンセル入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。内容をご確認の上、送信してください。お名前メールアドレス次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。👘CreatedBy。