我的项目有100多次迁移,主要原因是引入,删除然后再引入。即我有很多迁移对我来说没用。 此外,rails在运行迁移时开始添加弃用警告:
弃权警告:在未指定的情况下调用了
#timestamps
null
的选项。在Rails 5中,此行为将更改为null: false
。您应该手动指定null: true
以阻止 现有迁移的行为发生变化。
我想要绕过警告,我需要编辑迁移文件。编写新的新迁移(根据我当前的架构)是不是一个坏主意,因为我的迁移历史已经搞砸了? 你可能会说迁移会记录历史上发生的事情,但是我不是已经有了git吗?
答案 0 :(得分:2)
对于积极开发应用程序一段时间的Rails程序员来说,这是一个常见问题。我的小组遵循的做法是,当我们确信我们将永远不会回滚到迁移#X时,我们将回滚我们打算保留的最近迁移,将生成的db/schema.rb
复制为我们的新的“初始迁移”,然后在初始之后保留新的。这将使您免于这些弃用警告,并将减轻您的代码库和存储库。
希望这有帮助。