2024-05-13 03:46:15 发布
网友
我正在将运行在django1.8上的旧项目升级到至少django1.11。我听说升级一个django项目的多个版本是困难和令人沮丧的。我还没有这么做,所以我的问题是:每个版本升级1.8->;1.9->;1.10->;1.11是否更好。或者你建议我直接从1.8升级到1.11。请留下你最好的想法在这和其他事情我需要记住在升级。在
提前谢谢
从1.8到1.11不远。我以前也更新过这样的版本,而且我很少遇到问题。通常,我遇到的问题与Django没有任何关系,因为项目中使用的一些库需要更新,而我们也需要更新Django
升级可能很困难,取决于你的情况。在
首先,检查每个版本的变更日志。这里的目标是了解是否有可能影响代码的重大更改。例如,外场模型中的on_delete参数是可选的,现在是必需的。在
on_delete
如果你发现了什么,就更新你的代码。 真正能产生差异的是测试的存在。当我们从python2迁移到python3,django1.7到1.11时,测试就是我们的保险。在
我们只是开始使用virtualenv和新的python和新的django将代码升级到不同的分支,然后在开发中进行修复、测试和合并。如果你没有测试,也许是时候写一些测试了。在
我不建议您直接跳到django 2.0。同样,如果您有测试,您可以逐步更新,然后检查deprecation warnings。这些对于为下一个版本准备代码非常有用。在
deprecation warnings
更新
在这个过程中,我们检查了我们的需求,并修改了我们系统中的每个包,以验证兼容性。我们清理一点删除一些包,并更新一些其他的。同样,如果你有测试,你就有了保险:-)
结论
然后:
从1.8到1.11不远。我以前也更新过这样的版本,而且我很少遇到问题。通常,我遇到的问题与Django没有任何关系,因为项目中使用的一些库需要更新,而我们也需要更新Django
升级可能很困难,取决于你的情况。在
首先,检查每个版本的变更日志。这里的目标是了解是否有可能影响代码的重大更改。例如,外场模型中的
on_delete
参数是可选的,现在是必需的。在如果你发现了什么,就更新你的代码。 真正能产生差异的是测试的存在。当我们从python2迁移到python3,django1.7到1.11时,测试就是我们的保险。在
我们只是开始使用virtualenv和新的python和新的django将代码升级到不同的分支,然后在开发中进行修复、测试和合并。如果你没有测试,也许是时候写一些测试了。在
我不建议您直接跳到django 2.0。同样,如果您有测试,您可以逐步更新,然后检查
deprecation warnings
。这些对于为下一个版本准备代码非常有用。在更新
在这个过程中,我们检查了我们的需求,并修改了我们系统中的每个包,以验证兼容性。我们清理一点删除一些包,并更新一些其他的。同样,如果你有测试,你就有了保险:-)
结论
然后:
相关问题 更多 >
编程相关推荐