Django 404 shabloni
Sahifa topilmadi
Agar mavjud bo‘lmagan sahifaga kirishga harakat qilsangiz (404 xatosi), Django sizni 404 xatolarini qayta ishlaydigan o‘rnatilgan view’ga yo‘naltiradi.
Bu 404 view’ini qanday moslashtirishni ushbu bobda keyinroq o‘rganasiz, lekin avval shunchaki mavjud bo‘lmagan sahifani so‘rab ko‘ring.
Brauzer oynasidagi manzil satriga 127.0.0.1:8000/masfdfg/ deb yozing.
Ikki natijadan birini olasiz:
1:
2:
Agar birinchi natijani olgan bo‘lsangiz, siz Django’ning o‘rnatilgan 404 shabloniga yo‘naltirilgansiz.
Agar ikkinchi natijani olgan bo‘lsangiz, demak, sozlamalaringizda DEBUG qiymati True qilib belgilangan va 404 shabloniga yo‘naltirilish uchun uni False qilib o‘zgartirishingiz kerak.
Bu loyiha papkasida (bizning holatda my_tennis_club papkasida) joylashgan settings.py faylida amalga oshiriladi. Shu faylda loyihangiz qaysi xost nomida ishlashini ham ko‘rsatishingiz kerak:
Misol
debug xususiyatini False qilib belgilang va loyihaning lokal xostingizda ishlashiga ruxsat bering:
my_tennis_club/my_tennis_club/settings.py:
.
.
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False
ALLOWED_HOSTS = ['*']
.
.
Muhim: DEBUG = False bo‘lganda Django ushbu loyiha qaysi xostlarda ishlashiga ruxsat berishingizni ko‘rsatishingizni talab qiladi.
Production (ishchi) muhitida buni haqiqiy domen nomi bilan almashtirish kerak:
ALLOWED_HOSTS = ['yourdomain.com']
Brauzer oynasidagi manzil satriga
127.0.0.1:8000/masfdfg/ deb yozing — Django’ning o‘rnatilgan 404 shabloni ochiladi:
404 shablonini moslashtirish
Django templates papkasida 404.html nomli faylni qidiradi va 404 xatosi yuz berganda uni ko‘rsatadi.
Agar bunday fayl mavjud bo‘lmasa, Django yuqoridagi misolda ko‘rganingiz kabi "Not Found" xabarini ko‘rsatadi.
Bu xabarni moslashtirish uchun templates papkasida fayl yaratib, uni 404.html deb nomlash va istalgan kontent bilan to‘ldirish kifoya:
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>
Brauzer oynasidagi manzil satriga
127.0.0.1:8000/masfdfg/ deb yozing — moslashtirilgan 404 shabloni ochiladi:
Debug = True holatiga qaytarish
Darslikni davom ettirish uchun debug xususiyatini yana True qilib belgilashingiz kerak.
Misol
my_tennis_club/my_tennis_club/settings.py:
.
.
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
.
.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
