2012-04-21 114 views
0

我正在實現Django部署,並在我的設置文件中具有以下邏輯。如何永久性地向os.environ添加密鑰?

if 'DEPLOYMENT_TYPE' in os.environ: 
    DEPLOYMENT = os.environ['DEPLOYMENT_TYPE'].upper() 

因此,我希望能夠設置在os.environ的「DEPLOYMENT_TYPE」鍵在每臺計算機上。我曾嘗試在一個單獨的shell:

os.putenv('DEPLOYMENT_TYPE', ...) 
os.environ['DEPLOYMENT_TYPE'] = ... 

然而,這些不工作,因爲我猜當OS是進口os.environ被填充。因此,以每臺計算機爲基礎設置「DEPLOYMENT_TYPE」的最佳方法是什麼?我不能在我的設置文件中粘貼該行。

回答

2

整點os.environ是它從運行它的shell環境初始化的。所以你應該在運行部署的用戶的環境設置 - 即bash_profile或其他 - 中設置它。

+0

太棒了,這讓很多感覺! bash_profile中的行會是什麼樣子的? – ArKi 2012-04-21 19:31:10

+0

'export SOMEVAR = somevalue' – 2012-04-21 19:37:08

+0

非常感謝你們! – ArKi 2012-04-21 19:39:22

1

您可以使用SetEnv within Apache來處理這個問題,假設它只適用於您的Django Web環境。