10
A
回答
7
我倾向于编辑原始迁移,只要它是a)最后一次迁移并且b)不在源代码管理中。这为代码的所有其他使用者提供了一个干净的迁移路径。重要的是,您的迁移应该能够在您遇到的最早的数据库状态无误时运行。
1
如果您正在与多个开发人员合作,编辑现有迁移可能很危险。
如果你的同事已经迁移了原来的迁移,那么当他更新时,他将不会拿起新的代码并且会出现闹剧。这是一个非常难以追查的问题。在成为一名优秀的客户方面出现错误,并创建一个更新的迁移。
0
如果您可以验证其尚未由其他开发人员或某些自动构建设置运行,则只编辑现有迁移。为了安全起见,你不应该编辑提交的迁移文件,除非错误太严重以至于迁移不会在第一时间运行(在这种情况下,为什么要执行它)?
此外,必须特别注意迁移从应用程序中的其他位置调用代码,以便在运行时使用正确版本的代码运行它们。否则,模型中的细微变化可能会使您的早期迁移变得非常糟糕。
0
即使在阅读本文和下面的答案之后,我刚刚学会了艰难的道路。不要编辑原文。你最终失去了跟踪你的开发过程,并且很难重新控制。
2
相关问题
- 1. 数据迁移的最佳实践
- 2. 从MySQL迁移到MongoDB - 最佳实践
- 3. 迁移到Python 3 - 最佳实践
- 4. Rails最佳实践 - 处理错误rails
- 5. 管理更新多个数据库的迁移的最佳实践?
- 6. 文件管理最佳实践
- 7. C++依赖管理最佳实践
- 8. Capistrano配置管理的最佳实践?
- 9. 缓存管理的最佳实践
- 10. iPhone图层管理 - 最佳实践
- 11. 管理GoogleApiClient的最佳实践
- 12. IIS AppPool管理和最佳实践
- 13. 证书管理的最佳实践
- 14. 片段管理最佳实践多ListFragments
- 15. Rails部分最佳实践
- 16. 最佳实践on Rails的
- 17. Rails/jquery最佳实践
- 18. Rails的最佳实践
- 19. Rails模型最佳实践
- 20. Rails 4 Subdomain最佳实践
- 21. Rails最佳实践 - 引擎
- 22. rails js最佳实践
- 23. Rails current_user最佳实践
- 24. 后台管理系统安装的Rails最佳实践?
- 25. 管理和移动Docker容器的最佳实践是什么?
- 26. 最佳实践,以在轨
- 27. 最佳实践
- 28. 最佳实践
- 29. 最佳实践
- 30. 最佳实践