我们维护着一个大型项目,其迁移可以追溯到大约4年。
理想情况下,我们希望删除所有旧的迁移并将架构内容复制到initial_migration.rb
文件中。
那么我的问题包括三件事:
先谢谢了。
答案 0 :(得分:1)
这是我的处理方式:
rails new <appname>
)。!
,Student.create!(name:'Jane', email: 'jane@edu.edu')
... Teacher.create!('
)的创建方法中至少添加一个)
。如果数据没有持久化到表中,这将导致ActiveRecord给您一个更详细的错误。 rails db:seed
。交换数据库在很大程度上取决于您的部署方式,我不是该领域的专家。您应该咨询组织中的负责人,或者您可以尝试在此处Application Migration Best Practices进行阅读。
答案 1 :(得分:0)
我认为首先您应该备份数据库。
对于您当前的环境,我认为不需要运行新的迁移,因此,它的时间戳应小于当前架构的版本。
如果您想在其他环境中运行该新迁移文件,我认为可以。我认为,您将拥有另一个具有相同结构的数据库。或者,您可以仅针对这些环境复制当前版本。