4

这里是 Rails 新手。关于迁移的几个问题:

  1. 我创建了一个不再需要的迁移。我想删除它。正确的命令简单rails destroy migration AddMyColumnToMyModel吗?

  2. 假设我错误地输入了我想要销毁的迁移名称......当我尝试销毁不存在的迁移时会发生这种情况。

    $ rails destroy migration Blah
         invoke active_record
         remove migration.rb
    

    它说它正在删除migration.rb......这是一件坏事吗?

4

1 回答 1

5
  1. 当然,这是正确的命令。请注意:如果您实际上通过使用 将更改提交到数据库来运行不需要的迁移,rake db:migrate请确保在执行其他任何操作之前运行它:

    rake db:rollback
    

    down这样做是在您最近的迁移中运行该方法。它与以下内容完全相同:

    rake db:migrate:down VERSION=20130529014413
    

    版本号对应于您最新迁移的版本号。它还可以带一个STEP参数,以防您需要回滚一堆迁移而不是只回滚一个,如下所示:

    rake db:rollback STEP=3
    

    当然,如果您只是生成了不需要的迁移并且从未运行过它,则无需回滚任何内容。您可以使用您发布的命令或手动删除相应的文件来摆脱它。

    来源: http: //guides.rubyonrails.org/migrations.html#rolling-back

  2. 不用担心,这对您的代码没有任何作用。

于 2013-05-30T14:46:04.383 回答