在开发中修改数据库模式的最佳方法

时间:2011-03-22 21:11:32

标签: ruby-on-rails

目前我正在使用它:

edit creation migrate
rake db:drop
rake db:migrate
rake db:seed

但我经常可以看到为每个添加或编辑的列进行迁移等等 我认为我的方式更好,因为它更清洁,更快速地迁移到生产环境(一个表的一个sql)。使用我的方法有什么缺点吗?
你怎么看? 编辑:
需要明确的是:我正在谈论任何制作之前的阶段,当我在自己的电脑上编码时,甚至不考虑制作。

2 个答案:

答案 0 :(得分:1)

在生产中肯定需要增量迁移,在这种情况下,您无法放弃整个数据库。在开发中使用它们也可以帮助您确保它们是正确的。

答案 1 :(得分:0)

了解你在这里想要达到的目标,但是你如何去做却是非常错误的。 您的开发环境应尽可能贴近您的生产环境。 可能遇到各种各样的问题。

当您需要在dev上复制生产环境时会发生什么? 当你“忘记”在使用丢失的迁移完成的prod上添加/删除某些内容时会发生什么?

对于开发人员来说,也许更好的命令是rake db:rolback,如果你需要编写错误或其他内容,它会回滚上一次迁移。

只是出于好奇 - 为什么不使用rake db:reset而不是三个单独的rake任务?