0

由于对我的 Django 应用程序的新要求,我开始使用 zeep。我像往常一样通过现有的 virtualenv 安装它。问题是,当我尝试使用 Apache 和 mod_wsgi 部署我的应用程序时,它不起作用,返回以下错误:

ImportError at /prwn/
cannot import name python_2_unicode_compatible

/home/prwn/env/lib/python2.7/site-packages/zeep/wsdl/definitions.py in <module>
from six import python_2_unicode_compatible 

最奇怪的是,当我的应用程序使用 runserver 和相同的 virtualenv 运行时,它运行良好。我尝试创建一个新的 virtualenv,一个新的 Apache 的虚拟主机,甚至将整个 virtualenv 的权限更改为 777,但仍然无法正常工作。

我使用zeep 的 0.23.0版本、6 的 1.10.0python 2.7

4

2 回答 2

2

好吧,最后我想通了。奇怪的是,当我的应用程序在 Apache 上运行时,它使用了旧版本的六库,该库已全局安装在我的系统上。我解决了将全局六库升级到新版本的问题,并且成功了。

于 2017-04-20T22:41:49.167 回答
1

使用'pip install --upgrade 6'解决了它

这是因为旧版本的六 < 1.9.0

于 2017-05-14T15:41:49.527 回答