0

我已经接管了一个 django (1.1) 项目,该项目安装了许多 django 应用程序作为鸡蛋(在 /usr/lib/python2.6/site-packages/ 中)。除了 django 管理文档之外,这在任何地方都可以正常工作。尝试在此处查看标签或过滤器的文档让我:

File "/usr/lib/python2.6/site-packages/Django-1.1.1-py2.6.egg/django/contrib/admindocs/views.py" in load_all_installed_template_libraries
313.         libraries = [os.path.splitext(p)[0] for p in os.listdir(e) if p.endswith('.py') and p[0].isalpha()]

Exception Type: OSError at /admin/doc/tags/
Exception Value: (20, 'Not a directory')

在哪里

e = '/usr/lib/python2.6/site-packages/django_tinymce-1.5-py2.6.egg/tinymce/templatetags'

所以基本上 django 管理文档不能自动加载鸡蛋,因为它们是 zip 档案,而不是目录。

做了一些搜索后,我认为我的选择是:

  1. 将鸡蛋拆包到位
  2. 适应http://docs.djangoproject.com/en/dev/howto/deployment/modpython/#using-eggs-with-mod-python(我正在使用 mod_wsgi)
  3. 破解 django admindocs 代码以正确处理鸡蛋

这些可能都不是真的很难,但在生产服务器上都没有完全吸引人的地方。有其他人处理过这个吗?你会推荐什么?

4

1 回答 1

0

您是否实际上为鸡蛋缓存目录指定了 Apache 正在运行您的代码的用户可写的目录。

http://code.google.com/p/modwsgi/wiki/ApplicationIssues#Access_Rights_Of_Apache_User

于 2010-12-22T23:40:55.333 回答