django - Heroku Django DEBUG 设置未应用

标签 django heroku

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

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

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

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

最佳答案

您的 django settings.py 文件是否在环境中查找?

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

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

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

要禁用调试,请从环境中删除变量,而不是尝试进行类型转换...它看起来更可靠且万无一失。 配置:取消设置调试

关于django - Heroku Django DEBUG 设置未应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16258290/

相关文章:

python - 如何将外部html加载到Django模板内的html中

django - django、夹层、nginx 中的 displayable_links.js 出现 500 错误

ruby-on-rails - 有没有办法在heroku上使用sendgrid调试邮件程序?或者检查邮件是否实际发送?

python - 从父表中选择所有记录,假设子表中存在某些内容

django - 将模板放在 django 项目中的最佳位置是什么?

python - 显式 cursor.close() 的必要性

javascript - Axios 请求在生产构建中返回 HTML 而不是 JSON。 ( react 、Node.js、Heroku)

node.js - 使用 CDN 和 heroku 进行通用 react 渲染

node.js - 如何利用 Heroku 的 'postdeploy' 脚本在配置的 Heroku PostgreSQL 数据库中创建表?

javascript - Sails JS - 显示闪存消息在 Heroku(生产)上不起作用,但在开发中工作正常