2011-05-25 39 views
1

我有我的用户表了几个迁移,它已经成为我真的不跟着自己:)如何做一个适当的迁移一劳永逸

理想情况下,我想要做的是一个烂摊子使用Devise库进行身份验证,并通过它创建我的用户表。

我应该做一个drop table users,并将我的累积迁移文件合并为一个,然后运行rake db:migrate?还是有更好的方法来做到这一点?这样做的好做法是什么?

另外,我想添加3列到fistName,lastName,company字段的新迁移到users表中。我应该在哪里添加,以便这些字段被创建?

谢谢, 亚历克斯

+0

更正前面的迁移是工作流程的自然部分,不要与之对抗:没有真正的附加价值。 – apneadiving 2011-05-25 21:09:25

+0

@apneadiving是的,但我担心的是,这仍然是我的开发环境,我可以自由地改变它。一旦我把它放在舞台上并进一步,我希望迁移变得更加美好和优雅。所以我想从尽可能少的尝试中得到它们。 – GeekedOut 2011-05-25 21:11:19

+0

在这种情况下,在一个迁移文件中清理所有内容,删除数据库并迁移 – apneadiving 2011-05-25 21:12:29

回答

2

当你在开发中,和孤独,你可以改变你的迁移文件,你所希望的方式(我仍然不相信它是有用的,见上面我的意见)。

那么,一旦你编辑的一切,只要你想:

  • 删除当前数据库:rake db:drop

  • 重建它:rake db:create

  • 迁移:rake db:migrate

迁移的过程在数据库本身被追踪:创建并命名为schema_migrations

一个表,每个条目与时间戳作为ID已经做出迁移。

因为你转储数据库,没有更多的痕迹,你可以重新迁移。

+0

纠正我,如果我错了,但你可以用'rake db:reset'完成这3个步骤 – Lucas 2011-05-26 11:10:36

相关问题