在virtualenv中运行django - ImportError:没有名为django.core.management的模块?

时间:2014-03-08 20:43:01

标签: django virtualenv

我在激活我的virtualenv之后安装了Django,但我仍然遇到以下错误

from django.core.management import execute_from_command_line
ImportError: No module named django.core.management

8 个答案:

答案 0 :(得分:24)

如果你已经激活了virtualenv(source /path/bin/activate),那么检查你是否安装了Django。

pip install django

使用next命令可以看到是否安装了Django。

pip freeze | grep django

您可以尝试的另一件事是删除#!/usr/bin/env python文件中的第一行(manage.py)。

答案 1 :(得分:5)

您应该检查是否安装了django 激活您的环境,然后运行以下命令以查看已安装的版本:

python -c "import django; print(django.get_version())"

答案 2 :(得分:3)

 sudo pip install django --upgrade

为我工作,顺便说一句,我没有虚拟环境。

答案 3 :(得分:1)

我正在使用虚拟环境,所以我在manage.py中添加了这一行:

sys.path.append('./myvenv/lib/python3.5/site-packages')

其中myvenv是我的虚拟环境的名称,我安装的Python的版本是3.5。 这解决了我的问题。

答案 4 :(得分:0)

我发现我同时安装了Python 3.4和2.7,而pip install django==1.7命令自动决定了Python 3.4 / dist-packages应该存在的地方。我将CD转到Python 2.7目录并重新输入它......一切都很顺利。

答案 5 :(得分:0)

当我从虚拟环境中运行Django然后使用另一个终端窗口运行命令时,我遇到了同样的问题 python manage.py shell没有先切换到venv。

我换回后问题得到了解决。

答案 6 :(得分:0)

如果您使用的是virtualenv,则可以使用sys.path.append('./myvenv/lib/python3.5/site-packages')将其添加到路径中。

尝试再次关闭和打开终端。这对我也有用。

答案 7 :(得分:-1)

我发现我可以从python解释器导入django模块,但是当从命令行运行时,django-admin.py无法导入它。

我确认我在虚拟环境中使用了python解释器。

我使用的是64位版本的python。卸载并安装32位版本,然后重新创建我的venv为我解决了这个问题。