我正在關注RailsTutorial.org教程,第7.3節,並嘗試使用rake將數據庫遷移添加到現有數據庫的密碼列。看來正在發生的事情是,rails重新運行先前的遷移文件並嘗試添加表Users(已存在),而不是最新的遷移文件並添加密碼列。任何幫助,將不勝感激!Rails DB遷移錯誤,Rails重新運行以前的遷移?
這裏是我跑生成遷移文件中的代碼:
$ rails generate migration add_password_to_users encrypted_password:string
然後我跑耙分貝:遷移並得到了以下錯誤:
An error has occurred, this and all later migrations canceled:
SQLite3::SQLException: table "users" already exists: CREATE TABLE "users" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "email" varchar(255), "created_at" datetime, "updated_at" datetime)
似乎你做了一個以前的遷移創建用戶表的副本。看看你的數據庫/遷移文件夾 – apneadiving 2011-01-24 17:48:47
應該有兩個遷移包含:create_table:users – apneadiving 2011-01-24 17:54:21