2012-04-24 54 views
3

我有一个运行在虚拟环境中的Django项目。 还有.bashrc文件中的export ENV=staging行。 而在设置中我尝试使用os.getenv('ENV')来读取它,但它返回None。面料:无法获得virtualenv环境变量

settings_staging.py

... 
ENV = os.getenv('ENV') 
... 

的.bashrc

... 
export ENV=staging 
... 

错误

[dev.gipi] out: File "/home/ubuntu/projects/deeyoon/settings/settings.py", line 61, in <module> 
[dev.gipi] out:  raise Exception('Environment variable ENV is requried!') 
[dev.gipi] out: Exception: Environment variable ENV is requried! 

什么可能导致问题,或者有什么用错了布莱恩?

苏丹。

回答

3

常见问题是.bashrc文件从不执行。输入env并检查是否存在ENV变量。

+7

我记得织物使用登录shell,'.bashrc'没有在登录shell中执行,但'.bash_profile'正常工作 – sultan 2012-04-24 05:31:49

10

织物忽略.bashrc时还有一种情况。 通常.bashrc包含以下行:

# If not running interactively, don't do anything 
[ -z "$PS1" ] && return 

注释掉。

+0

谢谢!那是:) – 2014-09-09 22:15:35

+0

我的荣幸,先生! – mnowotka 2014-09-09 22:58:11

+0

谁会认为这是.bashrc的问题!? 干杯! – mrpopo 2015-03-27 08:55:42