【发布时间】:2011-09-01 21:11:15
【问题描述】:
在一个项目中,seeds.rb 变得越来越复杂。我们有一个seeds/ 目录,其中包含要加载的数据的 yml 文件。它应该可以重新运行,并且不应该重复记录(这在模型中是允许的)。好吧,seeds.rb 应该经过测试,它用于更新生产。不过,我并没有对此有所了解,想知道是否将逻辑移至lib/ 并照常编写规范。你会怎么做?
带有 rspec 的导轨 3。
【问题讨论】:
-
使用 seed.db 进行更新似乎很奇怪,迁移不是更合适吗?我原以为 seed.db 只会用于首次部署。
-
我认为 Andy 和正常迁移是在生产中更新数据的更好方法。
-
所以你会生成根本不改变架构的迁移?你会怎么做?在迁移中使用模型是一种反模式。他们不允许模型更改,除非您也重构旧迁移,这也是一种反模式。请,如果我弄错了,请写一个描述该过程的答案。我会很感激的。
标签: ruby-on-rails ruby rspec seed