ImportError: 无法导入 Django ...您是否忘记激活虚拟环境?

Kam*_*pet 7 python django virtualenv

我知道对此有几个问题/答案,但我不知道我应该做什么。我想开始使用 Django,并安装了它,并将pip installPython37 和 Python37-32 添加到我的环境变量中,我想它有效,因为我可以在 shell 中运行多个 Python 命令。但每次我尝试

    python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

它给了我一个错误。

我还设置了虚拟环境并激活了它,但我认为 Django 有问题。但是因为我安装了它,所以pip install django我知道它在那里并且我可以使用诸如django-admin startapp...之类的命令,所以我猜 Django 正在工作。我真的不知道 PYTHONPATH 是什么意思以及在哪里可以找到它。如果有人能看看我的错误,那就太好了。

在这里您可以看到 Django 已安装:#

**C:\Users\Kampet\Desktop\Python-Django\mysite>pip install django Requirement already satisfied: django in c:\users\kampet\appdata\local\programs\ python\python37-32\lib\site-packages (2.2.4) Requirement already satisfied: pytz in c:\users\kampet\appdata\local\programs\py thon\python37-32\lib\site-packages (from django) (2019.2) Requirement already satisfied: sqlparse in c:\users\kampet\appdata\local\program s\python\python37-32\lib\site-packages (from django) (0.3.0)**

# And thats my error
**C:\Users\Kampet\Desktop\Python-Django\mysite>python manage.py runserver
Traceback (most recent call last):
  File "manage.py", line 10, in main
    from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
  File "manage.py", line 21, in <module>
    main()
  File "manage.py", line 16, in main
    ) from exc
ImportError: Couldn't import Django. Are you sure it's installed and available o
n your PYTHONPATH environment variable? Did you forget to activate a virtual env
ironment?**
###################
Run Code Online (Sandbox Code Playgroud)

这是我的虚拟环境所在的位置。

Python-Django

- - - - - - - - -我的网站

- - - - - - - - - - - - -主要的

- - - - - - - - - - - - -我的网站

--------------------------管理.py

-----------------venv

- - - - - - - - - - - - -包括

-------------------------- 库

--------------------------脚本

--------------------------pyvenv.cfg

这是我的manage.py:

#!/usr/bin/env python
"""Django's command-line utility for administrative tasks."""
import os
import sys


def main():
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'mysite.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise ImportError(
            "Couldn't import Django. Are you sure it's installed and "
            "available on your PYTHONPATH environment variable? Did you "
            "forget to activate a virtual environment?"
        ) from exc
    execute_from_command_line(sys.argv)


if __name__ == '__main__':
    main()
Run Code Online (Sandbox Code Playgroud)

#

我不知道为什么它找不到模块“django”/django.core.management 我也无法在我的文件中的任何地方找到 django.core.management,但我重新安装并升级了 django 几次。我不知道这是否对你有帮助。

感谢您的时间。

Art*_*tay 8

在 Windows 机器上,您应该venv通过此命令激活.\venv\Scripts\activate(请注意,您应该位于此 venv 所在的文件夹中)

然后在激活的 venv 中安装 Djangopip install django并在同一终端中运行服务器python manage.py runserver


小智 5

我在 Windows 10 系统中遇到了类似的问题,并使用 Pipenv 解决了。下面给出的命令步骤。

  1. cd/转到项目文件夹
  2. 设置虚拟环境pipenv install
  3. 激活虚拟环境pipenv shell
  4. 安装Djangopip3 install django
  5. 运行项目pipenv run python manage.py runserver