在virtualenv下设置DJANGO_SETTINGS_MODULE? [英] Setting DJANGO_SETTINGS_MODULE under virtualenv?
问题描述
我希望环境变量DJANGO_SETTINGS_MODULE根据我所说的工作而改变。在我看来,我想将它设置为 .virtualenvs / postmkvirtualenv
,但我的审判没有任何效果。
I want the environment variable DJANGO_SETTINGS_MODULE to change depending on what I say for workon. It seemed to me that I want to set it in .virtualenvs/postmkvirtualenv
but my trial had no effect.
ftpmaint@millstone:~$ cat ~/.virtualenvs/postmkvirtualenv
#!/bin/bash
# This hook is run after a new virtualenv is activated.
export DJANGO_SETTINGS_MODULE=newproject.settings
ftpmaint@millstone:~$ echo $DJANGO_SETTINGS_MODULE
az.settings
ftpmaint@millstone:~$ workon newproject
(newproject)ftpmaint@millstone:~$ echo $DJANGO_SETTINGS_MODULE
az.settings
我应该在哪里出口?
此外,停用时还会恢复吗?如果没有,是否有一些自然的方式来恢复?
In addition, will it restore when I deactivate? And if not, is there some natural way to restore it?
推荐答案
你在正确的轨道上,但是你想使用 postactivate
钩子而不是 postmkvirtualenv
。
You were on the right track, but you want to use the postactivate
hook instead of postmkvirtualenv
.
在停用时不会自动恢复。幸运的是, postdeactivate
挂钩,你可以使用手动还原在激活时更改的任何环境变量。
It won't restore automatically on deactivate. Thankfully there is postdeactivate
hook that you can use to manually restore any environmental variables that you changed on activate.
这篇关于在virtualenv下设置DJANGO_SETTINGS_MODULE?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!