没有应用Heroku Django DEBUG设置



我目前在Heroku上有一个正在运行的Django生产应用程序。不幸的是,我无法关闭Heroku的DEBUG设置。在本地关闭它可以正常工作,但是当推送到Heroku(在heroku config:set DEBUG=False之后)时,它不适用。

错误页面仍然是默认的DEBUG页面,而不是我们模板根目录中的404,403和500模板。

我还尝试使用DJANGO_DEBUG设置,以防与DEBUG有任何环境冲突,并将结果转换为设置文件中的布尔值。heroku config显示环境设置正确。这是Django 1.3上的Heroku Cedar。

有什么建议或解决方案吗?

你的django settings.py文件是否查看了环境?

默认情况下,它不关心您在环境中设置的任何内容(通过"config:set")。如果要将环境"强制转换"为布尔值,请确保正确地强制转换。bool('False')仍然为True。

最简单的就是检测环境变量是否存在,这样您就不必担心类型转换或配置的特定格式。

DEBUG = os.environ.get('DEBUG', False)

要禁用调试,从环境中删除变量,而不是尝试类型强制转换…它看起来更可靠,更防傻瓜。config:unset DEBUG

问题是环境变量不是布尔值,而是字符串。因此,请将settings.py

置于行下

DEBUG = (os.environ.get('DEBUG_VALUE') == 'True')

相关内容

  • 没有找到相关文章

最新更新