我们用django 1.2版和python 2.4开发了项目。现在我们要将项目迁移到最新版本(Django1.4和python2.7)。
我对迁移非常新,任何人都可以就此提出建议。
我需要照顾什么? 我们需要重新编写所有代码吗?
答案 0 :(得分:2)
这就是我们正在做的事情(我们将〜60Kloc从Django 0.97升级到1.4):
__init__.py
文件中添加注释,指出您的代码使用哪个Django版本(这将为您节省大量时间: - )现在您已经升级了代码(您仍然需要计划升级的部署,但这是另一个问题)。
ps:我们将Django存储在我们的VCS中,这样我们就可以跟踪我们需要对Django本身做出的任何更改(特别是如果你不想去1.4,但是仍然可能需要一个或两个修复)版本)。
答案 1 :(得分:0)
首先在本地做。你肯定会遇到问题,然后相应地改变。我假设你不需要改变你的大部分代码。对于Django,请阅读Django 1.3 release notes和Django 1.4 release notes,并特别注意与以前的Django版本相比已弃用的内容(不仅仅是1.2,因为您可能已经在应用程序中使用了Django 1.0 / 1.1的功能) )。根据我的经验,这些主要是设置的变化和项目结构的一些细微变化。
对于Python 2.4 - > Python 2.7我不能说太多。这取决于你使用了多少旧功能。您将在测试整个应用程序时找到答案。可能没问题。
答案 2 :(得分:0)
如果您正在使用virtualenv,只需使用您想要的django / python版本创建一个新的virtualenv,运行此virtualenv并针对它运行您的测试套件。
顺便说一下,在Django上下文中,您可能需要小心“迁移”这个词。当您对数据库中的表进行更改时,迁移通常是指与South的模型迁移。答案 3 :(得分:-1)
Python不支持向后兼容性,考虑到从2.4版本迁移到2.7可能会遇到一些问题。