为何没有创建任何 Migration, db:migrate 仍旧会更新 schema.rb

2014-12-16 16:57:09 +08:00
 tkdchen
刚刚拿到一个项目,我试着跑了一下db:migrate,结果schema.rb里被更新了很多内容,把以前添加过的一些字段和索引都删掉了。我没有创建任何的migration。不清楚问题出在了什么地方。请指教。我是ROR绝对新手。望各位指点迷津。谢谢!
3553 次点击
所在节点    Ruby on Rails
3 条回复
eric
2014-12-16 19:02:58 +08:00
你看下 db/migrate 目录里有没有内容。所有的 migrations 都会保存在这里,包括在你接手项目之前由其他协作者创建的。
xp0729
2014-12-16 20:10:58 +08:00
这个问题在多人开发一个项目的时候太常见了。。。所以你拿到项目的时候应该好好看看代码。。。
fantasticfears
2014-12-16 20:37:43 +08:00
schema.rb 可能没有被更新并且同步到 commit 里呀。所以从代码库迁入完之后直接 rake db:migrate 后,建立的 schema.rb 才是比较准确的。Rails 也提供了导出 structure.sql 的方式。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/154370

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX