2013-04-28 10 views
6

私は現在、Heroku上で稼動中のDjango Djangoアプリケーションを持っています。残念ながら、私はHerokuのDEBUG設定をオフにすることができませんでした。ローカルでオフにするとうまく動作しますが、Herokuにプッシュすると(heroku config:set DEBUG=False以降)、適用されません。Heroku Django DEBUG設定が適用されていません

エラーのページは、テンプレートルートの404,403、および500のテンプレートではなく、デフォルトのDEBUGのままです。

また、DEBUGと環境の競合があった場合のためにDJANGO_DEBUG設定を使用して、設定ファイルの結果をブール値にキャストしてみました。 heroku configは、環境内の設定が正しいことを示しています。これはDjango 1.3、Heroku Cedarです。

ヒントや解決策はありますか?

答えて

10

あなたのdjango settings.pyファイルは環境内でさえ見えますか?

デフォルトでは、環境内で設定したものは気にしません(「config:set」経由)。環境をブール値に「キャスト」している場合は、正しくキャストしていることを確認してください。 bool( 'False')はまだTrueです。

環境変数が存在するかどうかを検出するのが最も簡単なので、タイプキャストや設定の特定のフォーマットについて心配する必要はありません。

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

、デバッグを無効には環境から代わりのキャストを入力しようとしている変数を削除するには...それだけではるかに信頼できると思われるとの証拠をだまします。 config:unset DEBUG

+0

ステージングとプロダクションの間にまったく異なるものが環境から引き出されています。私はそれを完全に削除しようとします。 – Murph

+0

素晴らしいですが、Falseに設定する代わりにそれを削除するだけで完璧に動作しました!ありがとう! – Murph

+1

驚くばかり!だから私は型キャスティングはおそらくbool( 'False')を働かせていないと推測しています。 –

関連する問題