我希望我的 Django 项目使用 Python 2.7 而不是 2.6.8

Posted

技术标签:

【中文标题】我希望我的 Django 项目使用 Python 2.7 而不是 2.6.8【英文标题】:I want my Django project to use Python 2.7 instead of 2.6.8 【发布时间】:2012-07-09 19:11:34 【问题描述】:

。我安装了 2.7 和 Django 1.5。但我的项目使用默认的 Python 2.6.8。怎么改?

更新

这是我的配置:

<Directory "/var/www/html/a/">
 SetHandler python-program
 PythonPath "['/var/www/html/'] + sys.path"
 PythonHandler django.core.handlers.modpython
 SetEnv DJANGO_SETTINGS_MODULE a.settings
 PythonDebug On
</Directory>

似乎sys.path 获得了 2.6.8 的路径。这是 Django 看到的 Python 路径:

['/usr/lib/python2.7/', '/var/www/html/', '/usr/lib/python2.6/site-packages/pip-1.1-py2.6.egg', '/usr/lib/python2.6/site-packages/django_transmeta-0.6.7-py2.6.egg', '/usr/lib64/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/gtk-2.0', '/usr/lib/python2.6/site-packages', '/usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg-info']

【问题讨论】:

适当设置路径,以便 2.7 优先。也可以看pypi.python.org/pypi/virtualenv 我建议您使用虚拟环境,创建一个包含您想要使用的所有框架、库、语言等的需求文件,并在一行中声明它们的版本,例如“Python== 2.6.8", "Django==1.3.1" 然后使用pip 命令安装所有的包。像这样pip install -r requirements.txt 使用pip。这是最简单的方法之一。 我需要另一种不使用 virtualenv 的方法。 卸载你的python2.6.8然后你的python2.7将成为默认的.. 如果你在使用 apache 和 mod_wsgi 然后添加 "WSGIPythonHome /path/to/python" 到你的 httpd.conf 【参考方案1】:

尝试使用 VirtualEnv , http://pypi.python.org/pypi/virtualenv/

这将通过创建虚拟环境使您的任务易于管理,您可以在其中使用一个 python 版本进行 django 安装,而不会破坏依赖其他 python 版本的其他应用程序。

【讨论】:

以上是关于我希望我的 Django 项目使用 Python 2.7 而不是 2.6.8的主要内容,如果未能解决你的问题,请参考以下文章

Django项目:生产服务器,使用python 3

使用 HTML/Django 调用 python 函数

我无法使用 Python 2.7.10 在我的生产环境中部署 Django 1.8.5

在 Django 中为特定视图设置用户权限

如何处理 Django 中未应用的迁移?

在 django 模板中使用 python 字符串格式化