Railsアプリの構築をいじっているだけで、ばかげたことをしたと確信しています。私は足場を走らせ、モデル Ave と Afe のスペルを間違えました。移行ファイルやビュー ファイルなどのすべてを確認して変更し、「ave」を検索して何か見逃していないかどうかを確認したと確信しています。とにかく移行を実行したところ、次のようになりました。
PG::UndefinedTable: ERROR: relation "aves" does not exist LINE 5: WHERE a.attrelid = '"aves"'::regclass ^ : SELECT a.attname, format_type(a.atttypid, a.atttypmod), pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod FROM pg_attribute a LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND a.attnum = d.adnum WHERE a.attrelid = '"aves"'::regclass AND a.attnum > 0 AND NOT a.attisdropped ORDER BY a.attnum
Extracted source (around line #17):
15 # GET /afes/new
16 def new
17 @afe = Afe.new
18 end
19
20 # GET /afes/1/edit
postgsql インデックス、スキーマをチェックし、移行を消去して rake:db:reset を実行しました。私のスキーマ、モデル、およびコントローラーはクリーンです。その古い「ave/aves」参照はどこにもありません。アクティブなレコードで何かがハングしたように見えますが、どこから始めればよいかわかりません。
ダミープレイアプリですが、最初からやり直したくありません。移行を強制的に再度実行することはできますか (削除を取り消した場合)?