-1

我正在尝试使用 plone.app.blob 和 repoze 安装 Plone 3.3rc4,但到目前为止我尝试过的没有任何效果。我尝试将 repoze.zope2、Plone 和 plone.app.blob 安装到 virtualenv 中。我在 virtualenv 的站点包目录中有这个版本的 DocumentTemplate,我正试图让它在 RHEL5 中运行。

出于某种原因,当我尝试paster serve etc/zope2.ini在这种环境中运行时,Python 会给出消息ImportError: No module named DT_UtilDT_Util.py目录中存在,__init__.py也存在,它所依赖的C模块也存在。我怀疑在导入 C 扩展时存在一些循环依赖或失败。当然,这个模块可以在正常的 Zope 安装中工作......

>>> import DocumentTemplate
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
  File "DocumentTemplate/__init__.py", line 21, in ?
  File ".../lib/python2.4/site-packages/DocumentTemplate/DocumentTemplate.py", line 112, in ?
    from DT_String import String, File
  File ".../lib/python2.4/site-packages/DocumentTemplate/DT_String.py", line 19, in ?
    from DocumentTemplate.DT_Util import ParseError, InstanceDict
ImportError: No module named DT_Util
4

1 回答 1

1

我必须说我怀疑 Zope 的 DocumentTemplate 是否可以独立工作。欢迎您尝试。:-)

请注意DT_Util 导入 C 扩展

from DocumentTemplate.cDocumentTemplate import InstanceDict, TemplateDict
from DocumentTemplate.cDocumentTemplate import render_blocks, safe_callable
from DocumentTemplate.cDocumentTemplate import join_unicode

您需要确保已编译这些内容。我的猜测是导入cDocumentTemplate模块失败,因此导入DT_Util失败。

于 2009-07-22T09:36:17.520 回答