Django - tworzenie widoków

Funkcja widoku lub w skrócie „widok” to po prostu funkcja Pythona, która przyjmuje żądanie sieciowe i zwraca odpowiedź sieciową. Tą odpowiedzią może być zawartość HTML strony sieci Web, przekierowanie, błąd 404, dokument XML, obraz itp. Przykład: Używasz widoku do tworzenia stron internetowych, pamiętaj, że musisz skojarzyć widok do adresu URL, aby wyświetlić go jako stronę internetową.

W Django widoki muszą być tworzone w pliku app views.py.

Prosty widok

Utworzymy prosty widok w aplikacji myapp, aby powiedzieć „Witaj w mojej aplikacji!”

Zobacz następujący widok -

from django.http import HttpResponse

def hello(request):
   text = """<h1>welcome to my app !</h1>"""
   return HttpResponse(text)

W tym widoku używamy HttpResponse do renderowania HTML (jak zapewne zauważyłeś, mamy kod HTML w widoku). Aby zobaczyć ten widok jako stronę, musimy po prostu zmapować go na adres URL (zostanie to omówione w następnym rozdziale).

Użyliśmy HttpResponse do renderowania HTML w widoku wcześniej. To nie jest najlepszy sposób renderowania stron. Django obsługuje wzorzec MVT, więc aby stworzyć poprzedni widok, Django - podobnie jak MVT, będziemy potrzebować -

Szablon: myapp / templates / hello.html

A teraz nasz widok będzie wyglądał jak -

from django.shortcuts import render

def hello(request):
   return render(request, "myapp/template/hello.html", {})

Widoki mogą również akceptować parametry -

from django.http import HttpResponse

def hello(request, number):
   text = "<h1>welcome to my app number %s!</h1>"% number
   return HttpResponse(text)

Po połączeniu z adresem URL strona wyświetli liczbę przekazaną jako parametr. Zwróć uwagę, że parametry zostaną przekazane za pośrednictwem adresu URL (omówione w następnym rozdziale).