新規にアプリを作成してモデルのテーブルに間違って:id
をマイグレーションすると
下記のようなエラーをはかれます。
rake aborted!
StandardError: An error has occurred, all later migrations canceled:
you can't redefine the primary key column 'id'. To define a custom primary key, pass { id: false } to create_table.
作成したid
がprimary_keyのid
と重複して邪魔しているということらしい。
id: false
をcreate_tableに書け、ということだけどどこに書いたらいいの?で探してブログRails4 db:migrateでid以外のカラムにプライマリキーの設定を行う
を参考にして下記のように書いて解決。primary_keyを追加で書いたid
に改めて追加してしてます。
create_table :モデル名, :id => false do |t|
t.integer :id, :primary_key => true