2017-08-12 25 views
0

私はenv/bin/activate内の私の環境変数を定義し、私はzshechoを使用して、彼らに環境変数をdjango設定で取得できませんでしたか?

debug="True" 
secret="RI4MgORxGb4c6zhotTHSNXc54lz1IWGbIoETfmj2VB99sPNlk9YMcg4b6qyX" 

を起動したときに、次の出力から出てきました。これで、環境変数が適切に設定されていることがわかります。私は、私が正常に動作

env debug='True' python manage.py run server 

とは対照的に、これらの変数を見つけることができません

python manage.py runserver 

を実行すると、問題が来る

DEBUG = True if os.environ.get("debug") == "True" else False 

を使用して、同じ内部のDjangoの設定を取得しています環境変数に応じてデバッグモードとプロダクションを設定できます。私はここで何が欠けていますか? zshシェルを使用しているためにこれが何か、あるいは何とか変数を間違って取得していますか?

+0

これらの変数を環境にエクスポートするのを忘れましたか? –

+0

@ IgnacioVazquez-Abrams今、私は輸出時に行方不明になってしまったことに本当に馬鹿げています。回答と私はそれを受け入れることができます。私はどこに間違っていたのか長い間考えていた:) – georoot

答えて

2

多くのシェルでは、変数を設定するのはシェルプロセス自体のためだけです。シェル変数を環境変数に変換する場合は、通常はexportコマンドで変数をエクスポートする必要があります。

関連する問題