使用Python3安装Django的问题

时间:2016-06-04 18:07:13

标签: python django virtualenv python-3.5

我已安装virtualenv

sudo pip3 install virtualenv

然后创建了一个新的virtualenv

virtualenv --python=/usr/bin/python3.5 venv

它返回了

Running virtualenv with interpreter /usr/bin/python3.5
Using base prefix '/usr'
New python executable in /home/alexandra/Documents/online-store/venv/bin/python3.5
Also creating executable in /home/alexandra/Documents/online-store/venv/bin/python
Installing setuptools, pip, wheel...done.

激活它

source venv/bin/activate

然后安装了Django

sudo pip3 install django

它安装在那里(即sudo pip3 install django --upgrade返回的内容)

/usr/local/lib/python3.4/dist-packages

也许这就是问题所在?因为它安装在python3.4而不是python3.5。但是如何在Django中安装python3.5

在文件manage.py中,此virtualenv中有python3.5的路径。

然后我跑

python manage.py runserver

它返回错误

Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ImportError: No module named 'django'

任何人都可以帮助我吗?

3 个答案:

答案 0 :(得分:3)

使用pip在虚拟环境中安装软件包时,请不要sudo。它使包安装在全球范围内。只需从命令开头删除sudo,它就应该安装在你当前正在使用的venv中。

答案 1 :(得分:0)

您已将django安装到系统python 3.4中。

当你第一次没有sudo运行install命令时,是否会抱怨权限?那应该是你的线索,它不是正确的pip。我的猜测是pip3只存在于系统python而不是你的virtualenv。您可以使用which查找,但这在任何情况下都有效:

venv/bin/pip install django

答案 2 :(得分:0)

不要sudo只使用pip来安装所有软件包。你已经在virtualenv中安装了python3,所以不需要使用pip3。 只做例如pip install django。或其他包pip install <package_name>