Outils pour utilisateurs

Outils du site


django:404

Traitement des erreurs 404 et 500 avec Django

Un statut HTTP 404 ou 500 peut être retourné, par exemple par les fonctions get_object_or_404 ou get_list_or_404. Quelques règles fonctionnement à conserver en tête

404 ou 500

Les principes énoncés ci-dessous pour les erreurs 404 s'appliquent également pour les erreurs 500. Remplacer simplement handler404 par handler500 et 404.html par 500 par 500.html.

Une vue unique

La vue correspondante est chargée depuis la variable handler404 de L'URLConf racine. Autrement dit, aucune autre vue ne sera chargée. Inutile donc de prévoir des variables handler404 dans les urls.py des applications.

Une vue par défaut

Si la variable handler404 n'est pas définie, Django chargera par défaut django.views.defaults.page_not_found(). Dans la plupart des cas, il est inutile de s'en préoccuper.

Cette vue est aussi appelée si l'URL appelée ne correspond à aucune des expressions régulières de la configuration.

Personnaliser la vue

Il est possible de créer une vue personnalisée. Cette vue est une vue classique, à placer dans le dossier templates du site.

DEBUG or not DEBUG, that is...

Si DEBUG est à TRUE dans settings, la vue ne sera JAMAIS appelée puisque les erreurs seront renvoyées en brut. C'est tout l'objectif de DEBUG, non ?

django/404.txt · Dernière modification: 2016/10/17 13:56 (modification externe)