Comment utiliser Django pour implémenter des pages 404, 500 personnalisées

高洛峰
Libérer: 2017-03-28 09:32:29
original
2458 Les gens l'ont consulté

Cet article présente principalement les détails de Django pour implémenter des pages 404 500 personnalisées. La méthode est très simple et pratique. Les amis dans le besoin peuvent s'y référer

1 Créer un projet

django-admin.py startproject HelloWorld

2. Entrez le projet HelloWorld, dans gérer. py Au même niveau du répertoire, créez un répertoire de modèles, et créez deux fichiers, 404.html et 500.html, dans le répertoire des modèles

3. Modifier settings.py

( 1.) Modification DEBUG. Pour False, (2.) ALLOWED_HOSTS ajoute le nom de domaine ou l'adresse IP spécifié, (3.) spécifiez le chemin du modèle 'DIRS' : [os.path.join(BASE_DIR,'templates')],

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
ALLOWED_HOSTS = ['localhost','www.example.com', '127.0.0.1']
TEMPLATES = [
 {
  'BACKEND': 'django.template.backends.django.DjangoTemplates',
  'DIRS': [os.path.join(BASE_DIR, 'templates')],
  'APP_DIRS': True,
  'OPTIONS': {
   'context_processors': [
    'django.template.context_processors.debug',
    'django.template.context_processors.request',
    'django.contrib.auth.context_processors.auth',
    'django.contrib.messages.context_processors.messages',
   ],
  },
 },
]
Copier après la connexion

4 .Créez un nouveau view.py

from django.http import HttpResponse
from django.shortcuts import render_to_response
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def hello(request):
 return HttpResponse('Hello World!')
@csrf_exempt
def page_not_found(request):
 return render_to_response('404.html')
@csrf_exempt
def page_error(request):
 return render_to_response('500.html')
Copier après la connexion

5. Modifiez urls.py, le code est le suivant

from django.conf.urls import url
from django.contrib import admin
import HelloWorld.views as view
urlpatterns = [
 url(r'^admin/', admin.site.urls),
 url(r'^test$', view.hello),
]
handler404 = view.page_not_found
handler500 = view.page_error
Copier après la connexion

Recompilez, redémarrez uwsgi. , saisissez localhost/HelloWorld/test, affichez 'Hello World !', la saisie d'autres adresses affichera le contenu 404.html, et si une erreur se produit, le contenu 500.html sera affiché.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal