TECH I.S.

Django 404ページ


存在しないページ(404エラー)

存在しないページ(404エラー)にアクセスしようとすると、Djangoは404エラーを処理する組み込みのビューに誘導します。

この章の後半でこの404ビューをカスタマイズする方法を学習しますが、最初に存在しないページをリクエストしてみてください。

ブラウザウィンドウで、127.0.0.1:8000/masfdfg/アドレスバーに入力します。

次の2つの結果のどちらかが表示されます。

1:

2:

最初の結果が得られた場合は、組み込みのDjango404テンプレートに移動します。

2番目の結果の場合は、DEBUGの設定がTrueに設定されているので、404テンプレートに誘導するにはFalseに設定する必要があります。

これはsettings.pyプロジェクトフォルダー(この場合はフォルダー)にあるmy_tennis_clubファイルで行われます。ここで、プロジェクトの実行元のホスト名も指定する必要があります。

デバッグプロパティをFalse、プロジェクトをローカルホストから実行できるようにします。

my_tennis_club/my_tennis_club/settings.py:
. . # SECURITY WARNING: don't run with debug turned on in production! DEBUG = False ALLOWED_HOSTS = ['*'] . .

重要:DEBUG=Falseの場合、Djangoでは、このDjangoプロジェクトの実行を許可するホストを指定する必要があります。本番環境では、これを適切なドメイン名に置き換える必要があります。ALLOWED_HOSTS = ['yourdomain.com']

ブラウザウィンドウのアドレスバーに127.0.0.1:8000/masfdfg/と入力すると、組み込みの404テンプレートが表示されます。


404テンプレートをカスタマイズする

404.htmlDjangoはフォルダー内で名前付きのファイルを検索しtemplates、404エラーが発生した場合にそれを表示します。

そのようなファイルが存在しない場合、Djangoは上記の例で見た "Not Found"を表示します。

このメッセージをカスタマイズするには、templatesフォルダーにファイルを作成して404.htmlという名前を付け、必要な内容を入力するだけです。

my_tennis_club/members/templates/404.html:
<!DOCTYPE html> <html> <title>Wrong address</title> <body> <h1>Ooops!</h1> <h2>I cannot find the file you requested!</h2> </body> </html>

ブラウザウィンドウのアドレスバーに127.0.0.1:8000/masfdfg/と入力すると、組み込みの404テンプレートが表示されます。



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細