我写了几个迁移为我的Rails 3应用程序,但我想改变迁移的顺序。 我怎样才能改变迁移顺序或序列? 它是那样简单重命名与什么似乎是时间戳迁移文件?
我知道这是一个奇怪的问题,但基本上,我做了我的迁移很乱,去掉了一些老移民,现在我需要创建一个新的人之前删除表。 我也知道我可以包括在创建最新表迁移drop语句,但我很好奇,想知道如何重新排序迁移。
我写了几个迁移为我的Rails 3应用程序,但我想改变迁移的顺序。 我怎样才能改变迁移顺序或序列? 它是那样简单重命名与什么似乎是时间戳迁移文件?
我知道这是一个奇怪的问题,但基本上,我做了我的迁移很乱,去掉了一些老移民,现在我需要创建一个新的人之前删除表。 我也知道我可以包括在创建最新表迁移drop语句,但我很好奇,想知道如何重新排序迁移。
是的,它运行还没有前缀的顺序被执行的迁移。 在早期版本的轨道,也许2.1
或2.2
,他们用开始进行编号01
,但他们改用时间戳。
这里是保持它的迁移已经运行轨迹的表。 意图是,多个开发商我增加了迁移,并在版本控制检查他们以后。 因此,有可能是还没有运行,但已运行编号最高的迁移之前编号为迁移。
如果你改变迁移顺序,(我有),最好是先下所有的迁移之前的版本,你是重新排序。 使用VERSION
与选项db:migrate
。 如果你想保留(不运行下)编号最高的迁移是20120318143249
,这样调用它。
rake db:migrate VERSION=20120318143249
我经常运行迁移下来,并重新运行它,直到我得到迁移的细节让我满意。 有时候,我重新整理它们,当我想对他们的一个工作,我希望它是最后一次。
是的,在文件名前缀是什么决定执行顺序。 但是,请记住,如果你擦DB /重新开始,这只会改变你当前的系统。