我在Windows计算机上为项目安装了Django 2.1.3,然后为另一个Django项目创建了virtualenv,因此在激活virtualenv之后。
我的virtualenv中还没有安装任何东西,所以为什么我可以运行django-admin startproject命令而不安装django。
但是当我尝试通过命令在virtualenv中运行服务器时:
manage.py runserver
我收到错误消息,即在virtualenv中未安装django
需要一些解释为什么我的virtualenv中会发生
答案 0 :(得分:1)
所以为什么我可以运行django-admin startproject命令而无需 安装Django
这是因为django-admin
在系统的PATH
中,因此它可以在任何虚拟环境中或外部运行。启动django项目并为其创建环境是两件事。意味着您可以使用django-admin
在外部环境中创建项目,然后使用现有环境在该项目上工作或创建专门用于该项目的新环境。因此,只需在新的venv
中安装Django。
在使用django-admin
时要小心,因为它使用系统的Django版本,因此在venv
中安装Django之后,只需使用python manage.py
答案 1 :(得分:0)
首先:您可以运行django命令,因为您已将其安装在计算机中并且正在使用该安装。
第二:因为您还需要在Virtualenv中安装Django。 virtualenv是与计算机分离的环境,因此您需要安装虚拟环境中要具有的所有依赖项。在这种环境中拥有的所有依赖项都不在您的PC中,反之亦然。
这使您可以在计算机和虚拟环境中拥有不同的版本以及不同的依赖项
答案 2 :(得分:0)
我建议为具有正确要求的第一个项目创建另一个virtualenv,然后删除Django的系统版本。将来会更清洁。