我们用django 1.2和python 2.4开发了项目。现在我们要将项目迁移到最新版本(Django1.4和python2.7)。将django1.2项目迁移到django1.4
我非常新的迁移,任何人都可以请告知这一点。
我需要注意些什么? 我们是否需要重新编写所有代码?
我们用django 1.2和python 2.4开发了项目。现在我们要将项目迁移到最新版本(Django1.4和python2.7)。将django1.2项目迁移到django1.4
我非常新的迁移,任何人都可以请告知这一点。
我需要注意些什么? 我们是否需要重新编写所有代码?
这就是我们正在做的(我们正在升级〜60Kloc从Django的0.97至1.4):
__init__.py
文件的注释指示哪些Django的版本的代码可以使用(这将节省您大量的时光总有一天:-)现在你已经升级你的代码(你仍然必须规划升级的部署,但这是另一个问题)。
ps:我们将Django存储在我们的VCS中,这样我们可以跟踪我们需要对Django本身做出的任何更改(尤其是在不想到1.4的情况下需要更改,但仍然可能需要一个或两个修补程序该版本)。
Python不支持向后兼容性,考虑到你可能会从2.4迁移到2.7的一些问题。
只要先在本地做。你肯定会遇到问题,然后相应地改变。尽管我假设您不需要更改大部分代码。对于Django的阅读Django 1.3 release notes和Django 1.4 release notes,特别要注意对什么是弃用相对于以前的Django版本(不只是1.2,因为你可能在你的应用程序已经使用functionalty从Django的1.0/1.1以及)。根据我的经验,这些主要是设置的变化以及项目结构的一些细微变化。
对于Python 2.4 - > Python 2.7版我不能说太多。这真的取决于你使用了多少旧功能。你会发现当你测试整个应用程序。可能没有问题。
感谢您的命令。 – keshavv 2012-08-14 10:13:26
如果您使用的virtualenv,刚刚创建所需的Django的/ Python的版本新的virtualenv,workon此的virtualenv并对其运行测试套件的。
顺便说一句,你可能要小心使用单词“迁移”,而在一个Django上下文。迁移通常是指在您对数据库中的表进行更改时使用South迁移模型。
不是模型迁移。最新的版本代码迁移。 – keshavv 2012-08-14 10:27:13
你有测试套件吗?你是否运行覆盖? – thebjorn 2012-08-14 05:22:03
是的。我们有一个测试用例并运行覆盖率。 – keshavv 2012-08-14 05:33:18