rake db:migrate没有创建用户表

时间:2015-10-02 22:05:29

标签: ruby-on-rails model migration rake

我有以下迁移

enter image description here

问题是rake db:migrate没有执行第一次迁移,也没有创建users表。

这可能是什么原因?

enter image description here

1 个答案:

答案 0 :(得分:2)

  

这可能是什么原因?

主要原因可能是您已经运行了迁移 - 或者可能是以后的迁移 - 因此Rails认为它不需要运行它。

查看是否属于这种情况的好方法是打开db/schema.rb文件:

enter image description here

您将看到架构正在运行的最新迁移。如果这取代了你试图调用的那个,它就不会运行。

-

<强>修复

可以生成新的迁移,并将代码复制到:

$ rails g migration AddUsers2

然后添加以下内容:

#db/migrate/_____.rb
class AddUsers2 < ActiveRecord::Migration
   def change
      create_table :users do |t| 
        t.string :name
        t.timestamps
      end
   end
end

或者,您可以擦除数据库并重新开始。这可以使用rake schema:load来实现。 这将删除所有数据并重新开始