我有两个版本的python 2.7和3.4并通过pip安装了django。它显示在ubuntu终端:
$ pip freeze
Django==1.6.11
$ pip --version
pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)
$ python
Python 2.7.9 (default, Feb 3 2016, 02:50:32)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>import django
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named django
>>> import sys
>>> sys.path
['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']
>>>
任何想法??
答案 0 :(得分:25)
可能pip
将软件包安装到dist-packages
目录中,该目录未包含在PYTHONPATH
环境变量中。你有几个解决方案:
pip
之前,为您的项目创建和配置virtualenv
。这是最恐怖的方式尝试使用built-in pip module安装Django
:
python -m pip install django
此命令应将软件包安装到site-packages
目录。
dist-packages
添加到PYTHONPATH
。这个问题可以帮助您:How to globally modify the default PYTHONPATH (sys.path)? 答案 1 :(得分:3)
使用
时出现此错误python manage.py runserver #python version 3 was being used
使用以下方法解决问题:
python2 manage.py runserver #python version 2
答案 2 :(得分:1)
如果使用virtualenv,则需要关闭计算机中的其他活动虚拟环境,并确保已安装django。转到python3解释器并运行以下命令:
>>from django import get_version
>>django_version()
确保它向您显示此“ 2.1.4”
答案 3 :(得分:1)
此错误表明未安装Django。安装Django应该可以解决问题。
在我的情况下,Django存在于我的virtualenv中,但是在使用gunicorn时出现此错误,然后我意识到gunicorn正在处理我的全局安装python环境,而不是我在全局python env上安装Django的虚拟环境只是解决了我的问题
pip install django
答案 4 :(得分:0)
对于Mac用户;如果您之前已下载并安装了python3,则只需通过终端shell运行python
默认使用预安装的python v2,它将无法识别您的django安装(除非您通过python2模块安装它) )当你检查版本时,你可能会收到错误:
$ python
>>> from django import get_version
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named django
尝试使用:
启动python$ python3
然后尝试:
>>> from django import get_version
>>> get_version()
你应该得到输出:
'2.0.3'
答案 5 :(得分:0)
我在requirements.txt
中将依赖项指定为Django==2.0.7
。因此,在激活虚拟环境之后,如果收到消息,请尝试安装要求:
pip install -r requirements.txt
答案 6 :(得分:0)
当尝试使用Django设置Apache工作时,我也遇到了同样的问题。 在下面将Pythonpath添加到Apache2.conf后解决问题:
WSGIPythonPath/opt/djangoprojects/myproject:opt/anaconda3/lib/python3.6/site-packages
我以前安装过Python3。
答案 7 :(得分:0)
我也面临着同样的问题。我正在使用python 3.7并安装了django 2.2。因此,我将python降级为3.6并安装了django 2.2,而没有安装virtualenv。
答案 8 :(得分:0)
此错误表明您没有安装Django。安装Django应该可以解决问题。
完成后,您可以使用以下命令检查“ django”的路径:
>>> sys.path
答案 9 :(得分:0)
我今天遇到了同样的问题。做pip3 install django
或pip3 install -r requirements.txt
就解决了。
答案 10 :(得分:0)
par = contents.split('.')
解决了我的问题
运行时出现此错误:
python3 manage.py migrate
我更改为python manage.py migrate
答案 11 :(得分:0)
对于已经安装的其他模块,与超级用户执行相同的命令,我也遇到类似的错误:
sudo pip3 install -r requirements.txt
解决了我的问题。
答案 12 :(得分:0)
尝试更新Django。
我遇到了同样的问题,因为我安装了旧版本的Django。我安装了最新版本的Django,它解决了我的问题。
答案 13 :(得分:0)
对于 MacOs,我在使用 import django 时遇到了同样的问题。我停用了 conda 并再次通过 conda 激活了 django 虚拟环境。然后确保 python 版本是正确的,在我的情况下是 python 3.8.5。然后导航到项目目录并运行所需的 python 脚本。 我的Django版本是3.1.5
答案 14 :(得分:0)
确认您正在从 virtualenv 运行您已将应用安装到 venv。
如果您确定已安装它但仍然显示未找到 mdule,请卸载并重新安装。