0

我的项目有 100 多个迁移,主要是因为东西被引入、删除然后又被引入。即我有很多看起来对我没用的迁移。此外,当我运行迁移时,rails 开始添加弃用警告:

弃用警告:#timestamps在未指定选项的情况下调用null. 在 Rails 5 中,此行为将更改为null: false. 您应该手动指定null: true以防止现有迁移的行为发生变化。

我认为要绕过上述警告,我需要编辑迁移文件。编写新的迁移(基于我当前的模式)是否是个坏主意,因为我的迁移历史已经搞砸了?你可能会说迁移记录了历史上发生的事情,但我不是已经有了 git 吗?

4

1 回答 1

2

对于在一段时间内积极开发应用程序的 Rails 程序员来说,这是一个常见的问题。我的小组遵循的做法是,当我们确信我们永远不会回滚到迁移#X 时,我们将回滚我们打算保留的最近迁移,将生成的迁移复制db/schema.rb为我们新的“初始迁移”然后在最初的之后保留较新的。这将使您免受那些弃用警告的影响,并且还将减轻您的代码库和存储库的负担。

希望这可以帮助。

于 2016-02-07T05:13:12.597 回答