ruby-on-rails – 为什么我要恢复迁移?
在Rails中,默认情况下,迁移具有用于还原迁移的down方法.但是,在什么情况下我还想恢复迁移?
一些想法: 无论是在开发还是生产中,在我运行迁移之前,我总是会有一个我的数据库快照.特别是对于执行数据转换的迁移,我发现在大多数情况下恢复快照甚至比恢复迁移更快. (所以我绝不会急于做!) 如果迁移失败,它将: >在非事务性数据库上失败并出现异常,从而使数据库中断,或者 如果所做的更改是在生产中(或在开发的后期),后来证明是一个错误,我会在新的迁移中修复我的错误.我不会还原旧的.在开发中,我只是删除迁移. 我还发现down方法引入了额外的代码,我重复自己,因此可能会引入新的bug.这违反了DRY原则. 所以我对职业选手很好奇,因为我想不到任何优点. 解决方法
在开发过程中,通过自动使用down方法,可以轻松快速地逐步“改进”迁移.例如
>创建迁移并迁移到它 拍摄快照的方法很好.但是rails使用“向下”迁移技术自动神奇地包含相同的效果.适用于所有数据库,味道很棒 添加: 对于生产,我同意不应该需要向下迁移.但有时会发生错误,你需要回滚.向下迁移路径为您提供了第一个快速机会,可以在出现错误的升级过程中解决紧急情况. – 在紧急情况下尝试向下迁移比使用检查点恢复数据库要快得多. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |