亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

pyenv-virtualenv 中的環境變量

pyenv-virtualenv 中的環境變量

三國紛爭 2023-07-18 15:33:47
我創建了一個用于pyenv virtualenv 3.5.9 projectname開發 django 項目的虛擬環境。如何設置環境變量供我的代碼使用?我嘗試像這樣添加環境變量 DATABASE_USER /Users/developer/.pyenv/versions/projectname/bin/activate :export DATABASE_USER="dbuser"當我嘗試echo $DATABASE_USER打印一個空字符串時。嘗試安裝zsh-autoenv現在我可以echo $DATABASE_USER獲取 .autoenv.zsh 文件中設置的值。但我似乎無法讓環境變量可用于我的 django 代碼:如果我嘗試os.getenv('DATABASE_USER', '')在 virtualenv 內的 python shell 中,我得到''可能出什么問題了?zsh-autoenv 變量是否僅適用于 zsh shell,而不適用python manage.py shell?
查看完整描述

2 回答

?
慕標5832272

TA貢獻1966條經驗 獲得超4個贊

正如您所注意到的,pyenv似乎并沒有實際使用該bin/activate文件。他們沒有說激活方法是什么,但是像你一樣,在那里添加環境變量沒有產生任何結果。

最后,他們最終安裝了autoenv,它標榜自己是基于目錄的環境。它允許您在目錄中創建 .env 文件,當您cd進入該目錄時,它會運行 .env 文件。您可以將其用作環境變量,也可以向其中添加其他任何內容。

我在 autoenv 頁面上注意到他們說你應該使用direnv來代替,因為它具有更好的功能并且是更高質量的軟件。這些都不是特定于 Python 或 pyenv 的,如果您從目錄外部調用 python 代碼,它們可能無法工作。由于您使用的是 pyenv,因此您可能會從目錄中運行代碼,因此我認為兩者都很有可能起作用。


查看完整回答
反對 回復 2023-07-18
?
慕運維8079593

TA貢獻1876條經驗 獲得超5個贊

direnv在 MacOS/zsh 上安裝并配置為:

brew install direnv

eval "$(direnv hook zsh)"

cd <your-project>

echo export FOO=foo > .envrc

direnv grant .

echo $FOO

它就像一個魅力。


查看完整回答
反對 回復 2023-07-18
  • 2 回答
  • 0 關注
  • 140 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號