在virtualenv工作时我应该在哪里?

时间:2017-09-08 10:28:09

标签: python virtualenvwrapper

我刚刚在我的电脑上安装了virtualenv和virtualenvwrapper。现在我想用它来使用Django。当我从mkvirtualenv django运行~时,解释程序就会停留在那里。这是否意味着我可以在那里创建我的django文件?或者环境不是 虚拟?我应该创建自己的文件夹,而不是我在项目上工作吗?我认为mkvirtualenv会自动为我创建一个,并在运行workon时将我带到那里,否则,甚至使用virtualenvwrapper还有什么意义?

编辑:我的.bash_profile中的这几行可能会对您有所帮助:

export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/Devel
source /usr/local/bin/virtualenvwrapper.sh

2 个答案:

答案 0 :(得分:2)

virtualenwrapper将在〜$ WORKON_HOME /目录中创建virtualenv。这只是venv,不同于任何相关的"项目"您可能(或不...)想要使用的目录以及哪些virtualenvwrapper确实不会创建。

IOW,此时您与运行mkvirtualenv命令时的目录完全相同。

如果你想将这个venv与一个项目目录相关联,你必须创建这个目录(如果它还不存在),然后 - 在激活你的venv的情况下 - 运行setvirtualenvproject /path/to/your/projectdir(或{{1}这里运行cd /path/to/your/projectdir而没有参数)。

完成此操作后,下次使用setvirtualenvproject激活您的venv时,您也将自动cd到您的项目目录,workon myenv命令将带您回到那里你去其他地方。

至于使用(或不使用)virtualenwrapper的其他原因,您可以阅读文档并自行查找它添加到原始cdproject的其他功能以及您是否需要这些功能。

FWIW您期望的行为(创建venv和项目目录)由the mkproject command

给出

答案 1 :(得分:0)

virtualenvwrapper的主要优点是将您的环境与特定的工作目录分开。只需激活您的环境:

workon django

提示应更改为:

(django)

现在,您可以在任何目录中自由工作。