我尝试在我的Django应用程序中设置一些环境变量,以维护生产和开发版本。它适用于我的数据库服务器地址:我有这个代码:
Views.py:
SERVER_ADDRESS = os.environ['SERVER_ADDRESS']
我在应用的根文件夹中的SERVER_ADDRESS
文件中定义.env
变量:
.env文件:
SERVER_ADDRESS=http://192.168.0.6:5984/
我在Heroku SERVER_ADDRESS
设置中将https://xxx:xxx@xxxx.iriscouch.com/
设置为config variables
:
这很有效。但是,我还要为开发版本设置DEBUG
到True
,为生产版本设置False
。我做了同样的程序:
Views.py:
DEBUG = os.environ['DEBUG']
.env文件:
DEBUG=True
的Heroku:
DEBUG=False
但即使在Heroku部署的应用中,DEBUG
仍然True
,我可以看到Django消息:You're seeing this error because you have DEBUG = True in your Django settings file.
我还检查了Heroku的变量False
:
$ heroku config:get DEBUG
False
我不知道为什么相同的程序适用于views.py
中的变量而不是settings.py
中的变量,以及如何使其有效。