由于迁移错误导致Rake中止

时间:2015-09-10 20:44:16

标签: ruby-on-rails ruby ruby-on-rails-3 sqlite

我正在改变之前关注者模型的名称。我决定回到原来的名字但是有错误。我决定使用Drop_table方法来解决这个问题,但是还有问题。我删除了与关注者相关的任何文件,并且做了rake db:schema:load,导致没有错误。但每当我尝试做

rails g model Follower follower_id:integer followed_id:integer 

并将其编辑为

def change
    create_table :followers do |t|
      t.integer :follower_id
      t.integer :followed_id

      t.timestamps
    end
    add_index :followers, :follower_id
    add_index :followers, :leader_id
    add_index :followers, [:follower_id, :leader_id], unique: true
  end

然后我执行rake db:migrate,我得到以下内容。任何人都知道如何在不必从头开始的情况下解决这个问题?任何帮助表示赞赏。谢谢。

== 20150910203914 CreateFollowers: migrating ==================================
-- create_table(:followers)
   -> 0.0011s
-- add_index(:followers, :follower_id)
   -> 0.0004s
-- add_index(:followers, :leader_id)
rake aborted!
StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: table followers has no column named leader_id: CREATE  INDEX "index_followers_on_leader_id" ON "followers" ("leader_id")/Users/Steven/.rvm/gems/ruby-2.1.3/gems/sqlite3-1.3.10/lib/sqlite3/database.rb:91:in `initialize'

0 个答案:

没有答案