何时何地为新的 Django 项目创建虚拟环境?
When & where to create a virtual environment for a new django project?
我为我按照教程指南创建的 Django 应用程序创建了我的第一个虚拟环境。现在我不确定,我可以使用这个完全相同的环境(同名),还是我需要在创建新项目时创建一个新的虚拟环境?
我知道使用虚拟环境可以隔离您的各个项目依赖项和包版本,但我的项目都具有相同版本的 django 和 python。到目前为止,我还没有安装任何其他库,我想它们也会使用相同的版本。我还缺少其他东西吗?
我刚刚尝试从当前的虚拟环境创建一个新的虚拟环境,一旦我激活它,我现在就在新创建的环境中。从另一个虚拟环境中创建一个新的虚拟环境是否可以?这与在虚拟环境之外这样做有什么不同吗?
如果我要使用与旧项目相同的命名虚拟环境,对于这个新项目,会有什么影响?
正如您在问题中所述 venv
(虚拟环境)如 official python documentation 中所述允许您创建项目中使用的依赖项的快照,这样您就不会安装依赖项在“全局”上下文中,这意味着您的主 Python 目录。
A virtual environment is a Python environment such that the Python
interpreter, libraries and scripts installed into it are isolated from
those installed in other virtual environments, and (by default) any
libraries installed in a “system” Python, i.e., one which is installed
as part of your operating system. A virtual environment is a directory
tree which contains Python executable files and other files which
indicate that it is a virtual environment.
因此回答您在 post 中提到的几个问题:
- 您无需在每次开始新项目时都创建虚拟环境。
- 你没有遗漏任何东西。
- 我不太确定如何在其中创建一个虚拟环境。 (查看新建虚拟环境的目录结构,确认内容)
- 这意味着您有一个共享的虚拟环境。环境本身的任何变化都会影响这两个项目。
我强烈建议您为每个项目独立创建命名 venv
。在我看来,如果您对环境进行任何更改(例如包更新等),这将限制发生错误的可能性。
我为我按照教程指南创建的 Django 应用程序创建了我的第一个虚拟环境。现在我不确定,我可以使用这个完全相同的环境(同名),还是我需要在创建新项目时创建一个新的虚拟环境?
我知道使用虚拟环境可以隔离您的各个项目依赖项和包版本,但我的项目都具有相同版本的 django 和 python。到目前为止,我还没有安装任何其他库,我想它们也会使用相同的版本。我还缺少其他东西吗?
我刚刚尝试从当前的虚拟环境创建一个新的虚拟环境,一旦我激活它,我现在就在新创建的环境中。从另一个虚拟环境中创建一个新的虚拟环境是否可以?这与在虚拟环境之外这样做有什么不同吗?
如果我要使用与旧项目相同的命名虚拟环境,对于这个新项目,会有什么影响?
正如您在问题中所述 venv
(虚拟环境)如 official python documentation 中所述允许您创建项目中使用的依赖项的快照,这样您就不会安装依赖项在“全局”上下文中,这意味着您的主 Python 目录。
A virtual environment is a Python environment such that the Python interpreter, libraries and scripts installed into it are isolated from those installed in other virtual environments, and (by default) any libraries installed in a “system” Python, i.e., one which is installed as part of your operating system. A virtual environment is a directory tree which contains Python executable files and other files which indicate that it is a virtual environment.
因此回答您在 post 中提到的几个问题:
- 您无需在每次开始新项目时都创建虚拟环境。
- 你没有遗漏任何东西。
- 我不太确定如何在其中创建一个虚拟环境。 (查看新建虚拟环境的目录结构,确认内容)
- 这意味着您有一个共享的虚拟环境。环境本身的任何变化都会影响这两个项目。
我强烈建议您为每个项目独立创建命名 venv
。在我看来,如果您对环境进行任何更改(例如包更新等),这将限制发生错误的可能性。