PG::UndefinedTable: ERROR
外部キーの追加を行った際にPG::UndefinedTable: ERROR
が発生。
エラー内容
PG::UndefinedTable: ERROR: relation "モデル名" does not exist
$ rails db:migrate:status
で現在のmigrationファイルを確認
Status Migration ID Migration Name
--------------------------------------------------
down 2024xxxxxxxxx1 Create 子
down 2024xxxxxxxxx2 Create 親
外部キーを設定している場合、親のモデルからmigrationする必要があるが、デフォルトでは古い順から実行されるためエラーになる。
解消方法
以下コマンドで参照元である親モデルを先に実行する。
$ rails db:migrate:up VERSION=2024xxxxxxxxx2
その後、通常通り$ rails db:migrate
を行えばOK。