ImportError: No module named django.core.management when using manage.py
ImportError: No module named django.core.management when using manage.py
我正在尝试 运行 python manage.py runserver
我拥有的 Django 应用程序,但出现此错误:
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.core.management
这里是 pip freeze | grep -i django
的输出,显示我确实安装了 Django:
Django==1.6.5
django-cached-authentication-middleware==0.2.0
django-cors-headers==1.1.0
django-htmlmin==0.7.0
django-static-precompiler==0.9
djangorestframework==2.3.14
此外,尝试 运行 /usr/local/bin/python2.7 manage.py runserver
会产生同样的错误。
可能导致您遇到问题的问题:
PYTHONPATH 没有配置好,要配置它你应该这样做:
export PYTHONPATH=/usr/local/lib/python2.7/site-packages
您忘记了 manage.py
开头的行 #!/usr/bin/env python
如果你在 virtualenv 上工作,你忘记激活虚拟环境来执行 manage.py 命令(你可能已经在你的系统上安装了 Django 但没有在你的 virtualenv 上)
source path/to/your/virtualenv/bin/activate
或
workon env_name
你有 Python 2.7 和 Python 3.4 弄乱了包
您使用的是非常旧的 Python 2.4,您应该告诉系统将您的 Python 2.7 用于:
alias python=python2.7
有时 reinstalling/upgrading Django 修复了其中的一些问题。
您可能想要执行
python -c "import django; print(django.get_version())"
检查 Django 是否安装在您的 PC 或 virtualenv 上(如果您使用的是 virtualenv)
您可以在其他类似问题中找到一些其他解决方案:
- Django import error
- Django module error
为了解决我的问题,我在 .zprofile 中使用了以下行:
export PYTHONPATH=/usr/local/lib/python2.7/site-packages
我正在尝试导入 Django 但找不到它,通过执行上述操作解决了问题。
该错误是由于用户环境造成的。的确,我只是将virtuel环境bin路径添加到PATH,问题就解决了。
PATH=/bin/of_virtualenvironment/:$PATH
我通过 运行 下面的命令解决了同样的错误:
python3.4 manage.py runserver
上面的命令为我成功执行了。所以您可以尝试的是,如果您使用的是 python 2.7,则只需将 3.4 替换为 2.7。希望这有帮助。
我在使用 Python3 为 django 进行所有设置和 运行 时遇到了同样的问题,但是 运行 以下命令:
$ python manage.py migrate
通过使用 Python 的一致版本修复了问题:
$ python3 manage.py migrate
Operations to perform:
Apply all migrations: sessions, auth, admin, contenttypes
Running migrations:
Rendering model states... DONE
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying sessions.0001_initial... OK
我运行之前的其他命令是:
python3 -m pip install django
django-admin startproject learning_site
python3 manage.py runserver 0.0.0.0:8000
在你的 django 文件所在的位置,检查 django-admin.py:
的第一行
#!/usr/bin/env python
如果使用python3+,这里的python
可能指的是python2。所以检查你用哪个python安装django。
ls -l $(which -a python3)
如果您确实安装了 python3 并且没有链接为 python
,请将第一行 shebang 更改为
#!/usr/bin/env python3
直接的问题是缺少django包。对我来说,因为我是 virtualenv 中的 运行 django,所以在我重命名我的工作目录后会出现这个问题。
重新安装环境对我有用。
此外,请确保您没有将 .bashrc
与 alias
混淆。
如果 .bashrc
包含类似 alias python="/usr/bin/python3"
.
的内容,您将遇到此类错误
如果你在windows系统中使用virtualenv
和运行manage.py runserver
,cmd将使用系统的python,而不是python虚拟环境。
因为如果你在系统中安装python
,cmd会自动使用系统中安装的python
,而不是virtualenv
中的python。
因此,如果您在 Windows 中使用 virtualenv
。你需要 运行
>python .\manage.py runserver
我发现我可以从python解释器导入django模块,但是django-admin.py在运行从命令行导入时无法导入。
我确认我在我的虚拟环境中使用了 python 解释器。
我使用的是 64 位版本的 python。卸载并安装 32 位版本,然后重新创建我的 venv 为我解决了这个问题。
我通过在我正在处理的虚拟环境中安装 django 解决了这个问题
修复了我项目中的同样问题,仅使用;
pip install -r requirements.txt
我不需要做任何其他事情。当我 运行./manage.py runserver
一切正常!
使用 Pycharm 转到配置添加 runserver 8080
到参数,或者我通过重新启动计算机解决了我的问题....奇怪但有效。
我不需要更改 pip 或安装任何其他东西,首先尝试我列出的第一种方法,如果你对 运行 manage.py 到 PyCharm 箭头图标没问题,它会起作用,如果你想返回终端并输入 python manage.py runserver:port 尝试重新启动您的机器。
尝试此处的解决方案对我不起作用。重新安装 Django 并升级 pip 消除了错误,现在一切正常,当我 运行 python migrate.py 运行server
以下是我使用的 CLI 命令:
python -m pip install django
python -m pip install --upgrade pip
我正在尝试 运行 python manage.py runserver
我拥有的 Django 应用程序,但出现此错误:
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.core.management
这里是 pip freeze | grep -i django
的输出,显示我确实安装了 Django:
Django==1.6.5
django-cached-authentication-middleware==0.2.0
django-cors-headers==1.1.0
django-htmlmin==0.7.0
django-static-precompiler==0.9
djangorestframework==2.3.14
此外,尝试 运行 /usr/local/bin/python2.7 manage.py runserver
会产生同样的错误。
可能导致您遇到问题的问题:
PYTHONPATH 没有配置好,要配置它你应该这样做:
export PYTHONPATH=/usr/local/lib/python2.7/site-packages
您忘记了 manage.py
开头的行 如果你在 virtualenv 上工作,你忘记激活虚拟环境来执行 manage.py 命令(你可能已经在你的系统上安装了 Django 但没有在你的 virtualenv 上)
source path/to/your/virtualenv/bin/activate
或
workon env_name
你有 Python 2.7 和 Python 3.4 弄乱了包
您使用的是非常旧的 Python 2.4,您应该告诉系统将您的 Python 2.7 用于:
alias python=python2.7
#!/usr/bin/env python
有时 reinstalling/upgrading Django 修复了其中的一些问题。
您可能想要执行
python -c "import django; print(django.get_version())"
检查 Django 是否安装在您的 PC 或 virtualenv 上(如果您使用的是 virtualenv)
您可以在其他类似问题中找到一些其他解决方案:
- Django import error
- Django module error
为了解决我的问题,我在 .zprofile 中使用了以下行:
export PYTHONPATH=/usr/local/lib/python2.7/site-packages
我正在尝试导入 Django 但找不到它,通过执行上述操作解决了问题。
该错误是由于用户环境造成的。的确,我只是将virtuel环境bin路径添加到PATH,问题就解决了。
PATH=/bin/of_virtualenvironment/:$PATH
我通过 运行 下面的命令解决了同样的错误:
python3.4 manage.py runserver
上面的命令为我成功执行了。所以您可以尝试的是,如果您使用的是 python 2.7,则只需将 3.4 替换为 2.7。希望这有帮助。
我在使用 Python3 为 django 进行所有设置和 运行 时遇到了同样的问题,但是 运行 以下命令:
$ python manage.py migrate
通过使用 Python 的一致版本修复了问题:
$ python3 manage.py migrate
Operations to perform:
Apply all migrations: sessions, auth, admin, contenttypes
Running migrations:
Rendering model states... DONE
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying sessions.0001_initial... OK
我运行之前的其他命令是:
python3 -m pip install django
django-admin startproject learning_site
python3 manage.py runserver 0.0.0.0:8000
在你的 django 文件所在的位置,检查 django-admin.py:
的第一行#!/usr/bin/env python
如果使用python3+,这里的python
可能指的是python2。所以检查你用哪个python安装django。
ls -l $(which -a python3)
如果您确实安装了 python3 并且没有链接为 python
,请将第一行 shebang 更改为
#!/usr/bin/env python3
直接的问题是缺少django包。对我来说,因为我是 virtualenv 中的 运行 django,所以在我重命名我的工作目录后会出现这个问题。
重新安装环境对我有用。
此外,请确保您没有将 .bashrc
与 alias
混淆。
如果 .bashrc
包含类似 alias python="/usr/bin/python3"
.
如果你在windows系统中使用virtualenv
和运行manage.py runserver
,cmd将使用系统的python,而不是python虚拟环境。
因为如果你在系统中安装python
,cmd会自动使用系统中安装的python
,而不是virtualenv
中的python。
因此,如果您在 Windows 中使用 virtualenv
。你需要 运行
>python .\manage.py runserver
我发现我可以从python解释器导入django模块,但是django-admin.py在运行从命令行导入时无法导入。
我确认我在我的虚拟环境中使用了 python 解释器。
我使用的是 64 位版本的 python。卸载并安装 32 位版本,然后重新创建我的 venv 为我解决了这个问题。
我通过在我正在处理的虚拟环境中安装 django 解决了这个问题
修复了我项目中的同样问题,仅使用;
pip install -r requirements.txt
我不需要做任何其他事情。当我 运行./manage.py runserver
一切正常!
使用 Pycharm 转到配置添加 runserver 8080 到参数,或者我通过重新启动计算机解决了我的问题....奇怪但有效。 我不需要更改 pip 或安装任何其他东西,首先尝试我列出的第一种方法,如果你对 运行 manage.py 到 PyCharm 箭头图标没问题,它会起作用,如果你想返回终端并输入 python manage.py runserver:port 尝试重新启动您的机器。
尝试此处的解决方案对我不起作用。重新安装 Django 并升级 pip 消除了错误,现在一切正常,当我 运行 python migrate.py 运行server
以下是我使用的 CLI 命令:
python -m pip install django
python -m pip install --upgrade pip