我们目前正在开发的应用程序的一部分正在投入生产,但我们希望使用django 1.2final。我们的策略是使用django 1.1.1编写代码、测试和部署,同时使用
virtualenv
. 无论您的部署决定是什么,都没有理由不测试1.2下的代码,因为您希望它最终与1.2兼容。
virtualenv使整个过程无痛苦,是在环境之间快速切换的关键。设置起来非常简单:
easy_install virtualenv
virtualenv django12
cd django12
source bin/activate
然后在虚拟环境中下载并安装django 1.2并运行测试。我在端口8081上的virtualenv中运行开发服务器,因此我可以让两个服务器——使用相同的应用程序代码——同时运行端口8080、8081。
在我们的例子中,我们必须删除一个导入,并用try/except条件包装其他一些导入。我不得不写一个哑巴
csrf_token
csrf工作的模板标记——django开发人员已经通知我,他们将在1.2final中包含一个伪标记。我们还将south迁移工具升级到了0.7-pre版本,因为当前版本不支持django 1.2。
一句话:不管您的部署决定如何,如果可能的话,都可以对django的两个版本进行测试。