Raspberry Pi django服务器ImportError无法导入名称'etree'

时间:2019-07-09 13:50:33

标签: python django apache raspberry-pi3 python-docx

我正在尝试在Raspberry Pi上设置Django项目,以在本地网络上提供框架。我已经成功安装了Django,它是从apache2开始的,并且网络上的所有计算机都可以看到默认的Django“工作”页面。 加载我的应用程序后,出现错误为ImportError cannot import name 'etree'的网页,位于位置/home/pi/Django/Ponude/lib/python3.6/site-packages/docx/opc/oxml.py in <module>, line 12

我已经用pip安装了所有必需的模块,这全部来自pip Frozen:

Django==2.2.3
lxml==3.6.0
Pillow==6.1.0
python-docx==0.8.10
pytz==2019.1
sqlparse==0.3.0

当我尝试在shell中手动导入模块时,仅在启动django时,导入没有问题。 我尝试卸载和安装所有模块,但没有帮助。 我还搜索了Stack Overflow,但是没有发现类似的东西或没有帮助的东西。 有人能帮帮我吗?是关于权限还是apache2配置? 我不认为这有帮助,这是我的apache2配置:

<VirtualHost *:80>
    ServerName www.example.com

    ServerAdmin webmaster@localhost


    Alias /static /home/pi/Django/Ponude/Ponude/static
        <Directory /home/pi/Django/Ponude/Ponude/static>
           Require all granted
         </Directory>

    <Directory /home/pi/Django/Ponude/Ponude/Ponude>
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>

    WSGIDaemonProcess Ponude python-path=/home/pi/Django/Ponude/Ponude:/home/pi/Django/Ponude/lib/python3.6/site-packages
    WSGIProcessGroup Ponude
    WSGIScriptAlias / /home/pi/Django/Ponude/Ponude/Ponude/wsgi.py

</VirtualHost>

谢谢

编辑:同样,当我使用python manage.py runserver命令手动启动Django时,没有错误

1 个答案:

答案 0 :(得分:0)

所以...即使我安装了3.6,而Venv却安装了3.6,并且我已经明确设置为3.6 python路径,Apache2仍在Python 3.5上运行。

我通过创建新的venv并在python 3.5中全部运行来解决此问题。