2

当我使用 django 测试服务器部署运行良好的应用程序时,通常使用 pip install -e ....#egg=foo 安装的每个包都会出错。我通常使用 virtualenv 来执行此操作,它将文件放入 env/src/foo 并将另一个文件放入 python/site-packages(这是 django-css 的示例):

django-css.egg-link,其中包含以下几行:

/home/pinax-0.7.1/src/django-css
.

我如何告诉 wsgi 它应该遵循这些链接,或者我完全做错了什么。

谢谢,菲利普·瓦西鲍尔

4

2 回答 2

4

这是我在 virtualenv 中用于 Django 的 WSGI 脚本的样子:

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings'

import site
site.addsitedir('/path/to/virtualenv/lib/python2.6/site-packages')

from django.core.handlers.wsgi import WSGIHandler
application = WSGIHandler()

关键位是site.addsitedir(...),它将*.pth指定目录中的任何文件的内容添加到sys.path. 在这种情况下,它easy-install.pth是 Python 需要帮助查找的文件。

于 2009-12-09T16:44:05.503 回答
0

modwsgi 文档有关于如何使用 virtualenv的说明。它通常就像修改您的django.wsgi(或任何您称之为的)文件一样简单,以便将 virtualenv 环境添加到 modwsgi 的路径中。

此链接有一些关于使用 pip/virtualenv/modwsgi 的附加说明。

于 2009-12-09T16:34:15.327 回答