質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

Q&A

解決済

1回答

536閲覧

【heroku rails】$heroku run rails db:migrateで「PG::UndefinedTable: ERROR」

kaori_oka

総合スコア176

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

0グッド

0クリップ

投稿2019/12/04 07:55

編集2019/12/05 04:47

前提・実現したいこと

現在、railsで作成したアプリをherokuにデプロイしている途中です。
qiitaのデプロイ方法の記事を参考に進めているのですが、「heroku run rails db:migrate」でエラーが出てしまいました。
qiita記事内の、「これやったら直るかも」では直らなかったので詳しい方にお伺いしたく

発生している問題・エラーメッセージ

$ heroku run rake db:migrate -- create_table(:movie_chapters) D, [2019-12-04T07:45:57.333169 #4] DEBUG -- : (15.1ms) CREATE TABLE "movie_chapters" ("id" bigserial primary key, "movie_id" bigint, "chapter_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL, CONSTRAINT "fk_rails_6c759d08a2" FOREIGN KEY ("movie_id") REFERENCES "movies" ("id") , CONSTRAINT "fk_rails_91e9df7e5b" FOREIGN KEY ("chapter_id") REFERENCES "chapters" ("id") ) D, [2019-12-04T07:45:57.334458 #4] DEBUG -- : (1.1ms) ROLLBACK D, [2019-12-04T07:45:57.335852 #4] DEBUG -- : (1.2ms) SELECT pg_advisory_unlock(205462650132500460) rake aborted! StandardError: An error has occurred, this and all later migrations canceled: PG::UndefinedTable: ERROR: relation "chapters" does not exist : CREATE TABLE "movie_chapters" ("id" bigserial primary key, "movie_id" bigint, "chapter_id" bigint, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL, CONSTRAINT "fk_rails_6c759d08a2" FOREIGN KEY ("movie_id") REFERENCES "movies" ("id") , CONSTRAINT "fk_rails_91e9df7e5b" FOREIGN KEY ("chapter_id") REFERENCES "chapters" ("id") ) /app/vendor/bundle/ruby/2.5.0/gems/activerecord-5.2.3/lib/active_record/connection_adapters/postgresql/database_statements.rb:75:in `async_exec' ....省略.... /app/bin/bundle:3:in `<main>' Tasks: TOP => db:migrate (See full trace by running task with --trace)

中間テープブルがないと言われているでしょうか?
ローカルではちゃんと動きますし、1対多なので、必要ないと思うのですが...

「$heroku db:migrate:status」結果

$ heroku rake db:migrate:status Status Migration ID Migration Name -------------------------------------------------- D, [2019-12-05T04:45:14.718821 #4] DEBUG -- : (4.4ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC up 20191124052710 Create movies down 20191124101254 Create movie chapters down 20191125043848 Movie chapters down 20191125050422 Rename movie id id colmn to chapters down 20191125122421 Change data name to chapter down 20191126044604 Change data kana to chapter down 20191126112211 Change data name to movie down 20191126114227 Change data youtube id to movie down 20191127143625 Change data name to movie 20191127 down 20191127143700 Change data name to chapters 20191127

試したこと

エラー内容で検索してみたのですが、英語の記事が多くちょっとよくわかりませんでした。

↓参考にした記事
【初心者向け】railsアプリをherokuを使って確実にデプロイする方法【決定版】

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

DB table chapters がないというエラーですね。
migrateの順番が違うのではないかな?
db:migrate:status の結果みたいです

投稿2019/12/05 01:40

winterboum

総合スコア23324

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kaori_oka

2019/12/05 04:49

「$heroku db:migrate:status」結果を質問内容の箇所に追記しました。 仮説ですが、migrateファイルに中間テーブルを作る→消すというくだりがあるのですが、 それが現状のアソシエーションと合致せずこけているような気がするので、 migrateをリセットしてDB作り直ししようかと思っています。
winterboum

2019/12/05 05:54

up 20191124052710 Create movies down 20191124101254 Create movie chapters down 20191125043848 Movie chapters この辺りかな、 Movei作ってCapter作ってそれからmovie_chapters を作るという順にしてください
kaori_oka

2019/12/05 14:56

順序を修正したら直りました! 全部消して作り直して半日かかってしまいました^^;
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問