aaa*_*dan 7 ruby-on-rails database-migration database-schema rails-migrations
简洁版本:
移民怎么了down?在什么情况下您需要使用它?
长版:
许多支持数据库模式版本的框架(包括但不限于Rails的“迁移”)允许开发人员指定如何up反转数据升级(操作down),甚至通过分析代码自动生成降级操作(如 Rails 的change方法)。
事实上,在我遇到的所有 Rails 迁移代码中这样做似乎非常常见,这让我想知道这是否被认为是最佳实践。
就我个人而言,我从来没有需要降级数据库模式,而且我无法想象我想要的合理场景,无论是在开发还是生产中。我的经历似乎与普遍的down迁移不一致,所以我猜我错过了一些东西......
a 在哪些最常见的场景中down有用?
假设您已将新版本投入生产并运行迁移,一段时间后您发现了一个无法立即解决的错误。由于您需要保持生产服务器运行,因此您恢复到之前的提交。但是,这不会恢复对数据库所做的更改,这会导致错误。因此,您需要一种方法来回滚对数据库所做的更改,然后恢复到旧版本。这种情况可能不会经常出现,但重要的是要有一种应对这种情况出现的机制。
在开发过程中,您可能会运行一些迁移,然后决定要更改、添加或删除某些内容。有办法撤消它们意味着您不需要为每个小更改创建新的迁移。
| 归档时间: |
|
| 查看次数: |
3679 次 |
| 最近记录: |