新しいデータベースで移行を実行すると、次のエラーが発生します。
>> rake db:drop; rake db:create:all; rake db:migrate
1 activity-image-additions-!?
== CreateSomething: migrating ================================================
-- create_table(:somethings)
-> 0.0042s
== CreateSomething: migrated (0.0043s) =======================================
rake aborted!
An error has occurred, this and all later migrations canceled:
PG::UndefinedColumn: ERROR: column "id" does not exist
LINE 1: ...O "schema_migrations" ("version") VALUES ($1) RETURNING "id"
^
: INSERT INTO "schema_migrations" ("version") VALUES ($1) RETURNING "id
RETURNING "id"
schema_migrations テーブルには ID がないため、生成された SQL クエリには含まれません。
失敗後にデータベースを移行しようとすると、成功します。
>> rake db:migrate
== CreateSomething: migrating ================================================
-- create_table(:somethings)
-> 0.0041s
== CreateSomething: migrated (0.0042s) =======================================
現在、OS X 10.8 で PostgreSQL 9.2.4、Rails 4.0.0、pg gem 0.16.0 を実行しています。
唯一の移行:
class CreateSomething < ActiveRecord::Migration
def change
create_table :somethings do |t|
t.integer :x
t.integer :y
end
end
end
注: この移行を他の Rails プロジェクトで試しましたが、うまくいきました。他に何か問題がありますが、どこから始めればよいかわかりません。
スタック トレースは、pastebinで利用できます。