`
cvu
  • 浏览: 104913 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

又爱又恨的Migration

阅读更多
cyyan 写道
1、两人分模块开发,两人生成的数据迁移文件各自从001开始编号,合在一起的时候如何处理?
2、如果碰到需要使用相同的数据表怎么办?是避免出现这种情况还是出现了有好的处理方式?


前两天一个关于hobo插件的帖子可以解决,他的思想是不要migration,把fields定义在model里,然后每次build的时候,根据model里fields的变化自动生成migration文件。这个功能还没有release,不太稳定。

它的英文原帖中有人回复提及DrySQL也是针对类似的问题。这是一个gem,扩展了ActiveRecord::Base,也是为了不要维护migration,更适合legacy system。

hobo的作者这样描述两者的区别:DRYSQL says “make my app behave exactly as the database schema says it should”, while this migration generator says “make the database structure be exactly what my application source-code says it should be”。个人更喜欢hobo的思想,希望它尽快release。
分享到:
评论
2 楼 cvu 2007-11-25  
这是一个很好的尝试,但是也不能完全解决问题,如果遇到这种情况,还是不能胜任:某个branch需要rollback的一些migration,回到creating branch的时候,才能正好运行这个新加入的migration。

仔细想想,我说的解决方案也不是最好,时间错开的问题还是不能解决。或者说这就完全抛弃了migration的思路,也抛弃了它的好处。

原贴里有一个回复,是一个按timestamp排列的migration序列,目前看来是最接近的解决方案。
1 楼 rainchen 2007-11-22  
最近刚好新出了一个plugin,就是用来解决重复迁移文件序号的问题:
http://web.elctech.com/2007/11/7/duplicate-migrations-in-rails

相关推荐

Global site tag (gtag.js) - Google Analytics