django - 在 Mac (10.6.8) 上为 Django 初始化 virtualenvwrapper

标签 django macos osx-snow-leopard virtualenvwrapper initializing

我想使用 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/

相关文章:

mysql - 无法从终端运行mysql

c++ - Qt 4.6 是否默认在 Snow Leopard 上使用 Cocoa 编译?

python - DRF AttributeError 类型对象 'QuerySet' 没有属性 'nom'

django - Fabric + 构建,而不是 Fabric + pip + virtualenv

python - 类型错误 : makedirs() got an unexpected keyword argument 'exists_ok'

python - 在 TextField 中呈现 Django 应用程序

cocoa - 在 Snow Leopard 中处理 "Open Document"(odoc) 事件

Ios-deploy 安装不起作用 - macOS High Sierra (10.13.5)

macos - 如何让 SwiftUI List/OutlineGroup 懒惰地用于像文件系统这样的大树?

mysql - 在 osx 上的 mysql 中更改 secure-file-priv