我想使用 Django 并创建虚拟环境。我不太了解 virtualenvwrapper 网站上的初始化步骤文档。我已经在/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages 中安装了 virtualenvwrapper。我也已经安装了 XCode、Homebrew 和 Posgres。
文档告诉我:
$ export WORKON_HOME=~/Envs
$ mkdir -p $WORKON_HOME
$ source /usr/local/bin/virtualenvwrapper.sh
$ mkvirtualenv env1`
我对第一行特别困惑。它是否告诉我需要创建一个名为“WORKON_HOME”的项目文件夹并将其导出到另一个名为“Envs”的文件夹中? (我在我的 Mac 上搜索了这两个文件夹,但没有找到)。然后在第二行我创建了另一个目录“WORKON_HOME”? 如果您有更好的解释/教程的建议或链接,我将不胜感激。谢谢。
最佳答案
将这 3 行放在您的 ~/.bash_profile
文件中:-
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/work
source `which virtualenvwrapper.sh`
$HOME
环境变量指向用户的家。也称为波浪线“~”,即 /Users/your_osx_username/
。
WORKON_HOME
是您使用 ~/.bash_profile
文件中的 export
调用分配的新环境变量。这是保存所有新创建的 virtualenv 目录的地方。
PROJECT_HOME
是您通常手动放置所有自定义项目目录的地方。与你的 virtualenvs 无关,只是一个简单的引用点,供你 cd 使用 cd $PROJECT_HOME
语法。
which virtualenvwrapper.sh
指向 bash 脚本 virtualenvwrapper.sh
所在的位置,因此当您获取它时,该 bash 脚本中的函数可用于您的 mkvirtualenv
调用。
每当您打开“新外壳”(新选项卡,在您第一次更新 ~/.bash_profile
文件后关闭当前选项卡),所有这些环境变量和 bash 函数将因此可用你的外壳。
当我们使用 mkvirtualenv -p python2.7 --distribute my_new_virtualenv_1
创建一个新的 virtualenv 时,实际发生的是一个名为 my_new_virtualenv_1
的新目录包含一个符号链接(symbolic link)到正在创建全局 python2.7,并在 ~/.virtualenvs/
目录中创建新的 python 站点包子目录。引用:-
calvin$ mkvirtualenv -p python2.7 --distribute my_new_virtualenv_1
Running virtualenv with interpreter /opt/local/bin/python2.7
New python executable in my_new_virtualenv_1/bin/python
Installing distribute..........................................................................................................................................................................................................done.
Installing pip................done.
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/calvin/.virtualenvs/my_new_virtualenv_1/bin/get_env_details
如果你这样做
cd ~/.virtualenvs/my_new_virtualenv_1
calvin$ tree -d
.
├── bin
├── include
│ └── python2.7 -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7
└── lib
└── python2.7
├── config -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/config
├── distutils
├── encodings -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/encodings
├── lib-dynload -> /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload
└── site-packages
├── distribute-0.6.28-py2.7.egg
│ ├── EGG-INFO
│ └── setuptools
│ ├── command
│ └── tests
├── pip-1.2.1-py2.7.egg
│ ├── EGG-INFO
│ └── pip
│ ├── commands
│ └── vcs
└── readline
你会在里面看到这个目录结构。
当然请注意,您使用的是 Envs
,而我使用的是 .virtualenvs
作为虚拟环境保存目录。
关于django - 在 Mac (10.6.8) 上为 Django 初始化 virtualenvwrapper,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13242933/