尝试从命令行运行 Django 时出现以下错误。
File manage.py, line 8, in <module>
from django.core.management import execute_from_command_line
ImportError: No module named django.core.management
关于如何解决这个问题的任何想法?
听起来你没有安装 django。您应该检查此命令生成的目录:
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
看看你那里是否有 django 包。
如果站点包中没有 django 文件夹,那么您没有安装 django(至少对于该版本的 python)。
您可能安装了多个版本的 python,而 django 位于另一个版本中。如果您键入python
然后按 TAB,您可以找到所有 python 版本。这是我拥有的所有不同的python。
$python
python python2-config python2.6 python2.7-config pythonw2.5
python-config python2.5 python2.6-config pythonw pythonw2.6
python2 python2.5-config python2.7 pythonw2 pythonw2.7
您可以对每个版本的 python 执行上述命令,并查看每个版本的 site-packages 目录,看看它们是否安装了 django。例如:
python2.5 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
python2.6 -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
如果您碰巧在 python2.6 中找到 django,请尝试使用原始命令
python2.6 manage.py ...
sudo pip install django --upgrade
为我做了伎俩。
我遇到了同样的错误,并以这种方式修复了它:
我必须使用以下命令激活我的虚拟环境
source python2.7/bin/activate
很可能在您manage.py
的第一行开头,!/usr/bin/python
这意味着您正在使用系统全局 python 而不是虚拟环境中的。
所以更换
/usr/bin/python
和
~/projectpath/venv/bin/python
你应该很好。
好吧,我今天在安装 virtualenv 和 django 后遇到了同样的错误。对我来说,我使用 sudo ( sudo pip install django ) 来安装 django,而我试图在没有sudo的情况下运行manage.py runserver。我刚刚添加了 sudo 并且它起作用了。:)
您是否正在使用带有 Virtual Wrapper 的虚拟环境?你在 Mac 上吗?
如果是这样试试这个:
在命令行中输入以下内容以启动虚拟环境,然后对其进行处理
1.)
source virtualenvwrapper.sh
或者
source /usr/local/bin/virtualenvwrapper.sh
2.)
workon [environment name]
注意(来自新手) - 不要在您的环境名称周围加上方括号
我在运行命令时遇到了同样的问题-
python manage.py startapp <app_name>
但我的问题是我在虚拟环境之外运行该命令。所以只需先激活您的虚拟环境并再次运行该命令 -
我经历过同样的事情,这就是我所做的。
首先我的安装
pip install -r requirements.txt
不在我的活跃环境中。所以我做的是激活我的环境然后再次运行
pip install -r requirements.txt
当您的计算机上未安装 django 时会出现此问题。当 django 没有安装时,这意味着 django.core.management 模块也没有安装。所以它没有找到这个模块,它给出了错误。
为了解决这个问题,我们应该使用 pip 安装 django。打开命令行 cmd(在 Windows 上)并键入
pip install django
此命令将在您的计算机中安装 django。如果你没有安装 pip。你应该安装点子。这里如何在windows上安装pip
Okay so it goes like this:
You have created a virtual environment and django module belongs to that environment only.Since virtualenv isolates itself from everything else,hence you are seeing this.
go through this for further assistance:
1.You can switch to the directory where your virtual environment is stored and then run the django module.
2.Alternatively you can install django globally to your python->site-packages by either running pip or easy_install
Command using pip: pip install django
then do this:
import django print (django.get_version()) (depending on which version of python you use.This for python 3+ series)
and then you can run this: python manage.py runserver and check on your web browser by typing :localhost:8000 and you should see django powered page.
Hope this helps.
如果这对其他人有帮助......我遇到了这个问题,因为我的 virtualenv 默认为 python2.7,而我在使用 Ubuntu 时使用 Python3 调用 Django。
检查我的 virtualenv 使用的是哪个 python:
$ which python3
>> /usr/bin/python3
使用指定的 python3 创建了新的 virtualenv(使用 virtualenv 包装器https://virtualenvwrapper.readthedocs.org/en/latest/):
$ mkvirtualenv --python=/usr/bin/python3 ENV_NAME
python 路径现在应该指向 virtualenv python:
$ which python3
>> /home/user/.virtualenvs/ENV_NAME/bin/python3
就我而言,我使用的是 Ubuntu。问题可能是我没有以普通用户身份写入该文件夹的权限。您可以简单地sudo
在命令之前添加,它应该可以完美运行。就我而言sudo python manage.py syncdb
。
如果您更改了 python 项目的目录结构,也会发生这种情况(我这样做了,然后对行为的变化感到困惑)。如果这样做,则需要更改 /bin/activate 文件中的一行。所以,假设你的项目在
/User/me/CodeProjects/coolApp/
并且您的激活文件位于
/User/me/CodeProjects/coolApp/venv/bin/activate
当您设置项目时,您将项目更改为
/User/me/CodeProjects/v1-coolApp/
或者其他的东西。然后你需要打开
/User/me/CodeProjects/v1-coolApp/venv/bin/activate
找到它说的那一行
VIRTUAL_ENV="/User/me/CodeProjects/coolApp"
export VIRTUAL_ENV
并将其更改为
VIRTUAL_ENV="/User/me/CodeProjects/v1-coolApp"
在重新激活之前
我遇到了同样的问题,并且效果很好,您应该在项目中导航主文件夹而不是键入:
source bin/activate
我遇到了同样的问题,我收到此消息的原因是因为我正在执行“manage.py runserver”,而执行“python manage.py runserver”修复了它。
我的案例我在 mac 上使用了 pyCharm 5。我也有这个问题,运行这个命令后我的问题解决了
sudo pip install django --upgrade
有同样的问题。以 root 身份运行命令“python manage.py migrate”。使用 root 访问(sudo python manage.py migrate)工作正常
您可以这样尝试:(python3 manage.py migrate
使 sur 在src/
目录中)
您也可以尝试使用pip install -r requirements.txt
(让您在迁移后requirements.txt
键入时看到文件ls
如果毕竟它仍然不起作用,请尝试pip install django
希望能帮助到你
我在尝试使用python manage.py runserver时遇到了同样的问题。就我而言,我只使用sudo su。以 root 身份使用终端,然后再试一次,它可以部分工作。所以我使用 python manage.py migrate命令并修复它。
在运行服务器之前,您必须先选择您的项目,
workon your_project_name
然后
键入python manage.py runserver
这是因为虚拟环境配置。您需要在 Python 的虚拟环境上工作。您应该尝试使用命令提示符,
workon virtual_enviornment_name
文件和目录所有权冲突将导致此处出现问题。确保项目下的目录和文件的所有权属于当前用户。(您可以使用带有 -R 选项的 chown 命令更改它们。)尝试重新运行该命令:这解决了我在运行“第一个 Django 应用程序”示例时遇到的问题:
python manage.py startapp polls