Python 和 Zope:模块将在 python 中导入,但不会在 zope 中导入
我已经安装了图像模块 http://www.pythonware.com/products/pil/。然后,我尝试将其导入到 python 解释器中并成功:
>>> import Image
>>>
但是当我尝试通过 DTML 页面在 Zope 中导入模块时:
DTML 页面如下所示:
<dtml-var import_image>
哪个调用此脚本:
def import_image(self):
import Image
im = Image.open("/home/rv/Desktop/blah.jpg")
return im
然后我收到此错误:
“ImportError:没有名为的模块Image" 当我在python解释器中导入它时,怎么会没有模块呢?
编辑
python 脚本位于 Zopes 扩展文件夹中
I have installed the Image module http://www.pythonware.com/products/pil/. I then try and import it in the python interpreter and successfully so:
>>> import Image
>>>
But when I try to import the module in Zope via DTML page:
DTML page looks like:
<dtml-var import_image>
Which calls this script:
def import_image(self):
import Image
im = Image.open("/home/rv/Desktop/blah.jpg")
return im
I then get this error:
"ImportError: No module named Image" How can there be no module when I can import it in the python interpreter?
EDIT
The python script is in Zopes extension folder
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试:
而不是:
Zope 有一个 Image 模块,您可能会遇到命名空间冲突。
Try:
rather than:
Zope has an Image module and you could be encountering a namespace clash.
您不能只在 zope python 脚本中导入任何模块。 Zope 有一些安全限制。在您的情况下,您需要在 %zope-instance%/Extensions 中创建外部方法
或者也许你的 zope 实例找不到这个库,因为它正在另一个 python 环境中运行。您应该检查 %zope-instance%/bin/zopectl 中的所有参数是否正确
You can’t just import any module in zope python script. Zope has some security restrictions. In your case you need create external method in %zope-instance%/Extensions
OR maybe your zope instance cannot find this library because it's running in another python environment. You should check if all parameters are right in %zope-instance%/bin/zopectl