Function based views
Bu mavzuda biz funksiyaga asoslangan viewlarni qanday yozishni o'rganamiz. Oddiy qilib viewning funksiya ko'rinishida yozilgan varianti.
Sodda ko'rinishda:
from django.http import HttpResponse
def salom(request):
return HttpResponse("Salom. Bu sizning birinchi matningiz.")from django.http import HttpResponse
def salom(request):
return HttpResponse("Salom. Bu sizning birinchi matningiz.")Bu yerda salom nomli view yozildi. Qachonki foydalanuvchi bu viewga murojaat qilganda HttpResponse klassining ichidagi matnni browser oynasiga chiqaradi.
request parametri foydalanuvchi haqida qo'shimcha ma'lumotlarni olish uchun foydalaniladi.
Masalan foydalanuvchi qaysi browserdan foydalanayotgani, qanday qurilma orqali so'rov yuborgani va boshqa turli xil ma'lumotlarni olish mumkin.
Misol uchun foydalanuvchi qaysi metod bilan murojaat qilayotganini quyidagicha aniqlash mumkin:
from django.http import HttpResponse
def salom(request):
method = request.method
return HttpResponse(f"Salom. Siz {method} metodi bilan murojaat qildingiz.")from django.http import HttpResponse
def salom(request):
method = request.method
return HttpResponse(f"Salom. Siz {method} metodi bilan murojaat qildingiz.").method - request parametrining atributi hisoblanadi. Atributlarning to'liq ro'yxati bilan bu yerda tanishib chiqishingiz mumkin.
Shuningdek request parametrining metodlari orqali ham turli ma'lumotlarni olish mumkin.
from django.http import HttpResponse
def salom(request):
host = request.get_host()
return HttpResponse(f"Salom. Sizning hostingiz {host}.")from django.http import HttpResponse
def salom(request):
host = request.get_host()
return HttpResponse(f"Salom. Sizning hostingiz {host}.")get_host() metodi orqali host nomini aniqlash mumkin.
request parametrining metodlari bilan bu yerda to'liq tanishib chiqishingiz mumkin.