如何在同一台机器上为不同的项目使用两个不同版本的Django?

时间:2009-07-22 01:10:12

标签: django

我目前正在Mac OS X 10.5.7盒子上使用Django 1.0。它被安装到:

/Library/Python/2.5/site-packages/django /

但是,有一些功能属于django的开发版本(1.1),我喜欢在我公司的内部工具中使用它。不幸的是,我不能只更新到开发版本,因为我仍然需要为我的生产代码开发1.0版本。

是否有一种简单的方法(在Mac OSX上)安装了两个版本的Django?安装1.1之后,如何告知给定项目使用一个版本而不是另一个版本?

非常感谢您的帮助!

更新 谢谢大家的建议。 Virtualenv似乎是要走的路,这里有关于如何与Django一起使用它的博客文章:http://justindriscoll.us/2008/11/setting-up-django-development-virtual.html

S.O。再次救援:)

6 个答案:

答案 0 :(得分:11)

zc.buildout(尤其是部署)和virtualenv(特别是开发)是Jacob Kaplan Moss在今天在OSCON上给出的“真实世界中的Django”教程中的最佳建议,尽管他确实提到了许多其他工具 - 请参阅O'Reilly's site上的幻灯片。

答案 1 :(得分:6)

您可能需要考虑使用Virtualenv之类的内容。它允许您设置多个隔离的Python环境。所以,你不仅可以拥有多个Djangos,而且还可以运行不同版本的Python。

Zed Shaw创建了一个screen cast设置Virtualenv,虽然不是专门用于Django(他展示了如何获得他的邮件软件,Lamson,启动和运行)。但是,这些概念也适用于在Virtualenv的同一台机器上设置多个版本的Django。

答案 2 :(得分:3)

看看virtualenv http://pypi.python.org/pypi/virtualenv它可以帮助您保持包含的环境。 Pinax使用它。 http://www.pinaxproject.com

答案 3 :(得分:2)

的virtualenv

答案 4 :(得分:0)

virtualenvwrappper使virtualenv更容易。 http://pypi.python.org/pypi/virtualenvwrapper

答案 5 :(得分:0)

您可以在操作系统级别使用不同的用户。它在linux上运行良好,我想它也可以在Mac上运行。

您可以将django和其他软件包安装到每个用户的site-packages目录中:

http://www.python.org/dev/peps/pep-0370/

相关:Do I need virtualenv?