私の見解の1つに、次のコードがあります。
raise Http404
DEBUG=False
Djangoが正しい!500.html
の代わりにテンプレートをレンダリングするとき 404.html
理由がわかりません!
編集:DEBUG=True
標準のものを入手したとき(Djangoによる)
Page not Found (404)
You're seeing this error because you have DEBUG = True in your Django settings file. Change that to False, and Django will display a standard 404 page.
さらに、runserver
コンソールにコードがはっきりと表示され404
ます。代わりDEBUG=False
に、コンソールで設定すると500
!!が表示されます。これはとても奇妙です。
編集 2: 発生する直前に print ステートメントを配置するとHttp404
、メッセージDEBUG=True
が表示されるのはFalse
!
DEBUG=False
EDIT 3:ステートメントraise Http404
に到達しない場合は確認できます。どうすればそれが可能になりますか??
アップデート
実際にはDEBUG=False
、すべての URL で 500 を取得しますが、DEBUG=True
これは発生しません。それはどうしてでしょうか?? 同じように実行する必要があります。Django のバグだと思い始めています。