render() i kontekst szablonu
Przekazywać dane z widoku do szablonu
render() i kontekst szablonu to bezpłatna lekcja Django Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Django Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Django Academy zawiera 4 lekcji w sumie.
Szablony przechowują kod HTML
Szablon to plik HTML zawierający niewielkie symbole zastępcze. Widok wypełnia te miejsca prawdziwymi danymi, zanim strona trafi do przeglądarki. 🎨
Poznaj kontekst
Kontekst to po prostu słownik Pythona, który widok przekazuje do szablonu. Jego klucze stają się zmiennymi, które można wyświetlać na stronie.
context = {"name": "Ada", "count": 3}render() łączy wszystko
Skrót render() przyjmuje żądanie, nazwę szablonu i kontekst, a następnie zwraca za Ciebie gotowy obiekt HttpResponse.
from django.shortcuts import renderMały widok renderujący szablon
W tym przykładzie widok przekazuje jedną wartość do szablonu. Zwróć uwagę, że render() wykonuje całe wczytywanie i przygotowanie odpowiedzi w jednym wierszu.
def hello(request):
return render(request, "hello.html", {"name": "Ada"})Wyświetlanie zmiennej
W szablonie wyświetla się wartość z kontekstu za pomocą podwójnych nawiasów klamrowych. Django zastępuje {{ name }} wartością przekazaną przez widok.
<h1>Hello, {{ name }}!</h1>Gdzie znajdują się szablony
Django szuka szablonów w folderze templates, zwykle osobnym dla każdej aplikacji. Umieszczenie ich tam pozwala mechanizmowi wczytującemu znaleźć każdy plik po nazwie.
myapp/templates/myapp/hello.htmlPrzestrzenie nazw zapobiegają konfliktom
Umieszczenie szablonów w podfolderze nazwanym tak jak aplikacja tworzy przestrzeń nazw. Dzięki temu dwie aplikacje nie konkurują o tę samą nazwę pliku.
templates/blog/post.htmlDostęp za pomocą kropki w szablonach
Język szablonów używa kropki do wszystkiego: klucze słowników, atrybuty obiektów i elementy list są zapisywane jako value.key.
<p>{{ user.email }}</p>Brakujące klucze nie powodują błędu
Jeśli brakuje zmiennej kontekstu, Django wyświetla pusty ciąg znaków zamiast przerywać działanie. To ciche niepowodzenie zapobiega awariom stron z powodu drobnych braków.
Przekazywanie wielu wartości
Kontekst może zawierać dowolną liczbę kluczy, a także ciągi znaków, liczby, listy i obiekty. Szablon odczytuje każdą wartość za pomocą jej klucza.
return render(request, "page.html", {"posts": posts, "total": 5})Szablony zawierają niewiele logiki
Złożone operacje należy wykonywać w widoku, a nie na stronie. Szablon powinien głównie wyświetlać dane, zachowując czytelny podział między prezentacją a logiką.
Szybkie sprawdzenie
Zastanów się, jak dane przemieszczają się z widoku na stronę.
Podsumowanie: od widoku do strony
Dowiedziałeś się, że render() łączy żądanie, szablon i słownik kontekstu w jedną odpowiedź, a {{ }} wyświetla te wartości. Następnie: tagi i filtry.
Często zadawane pytania
Czy lekcja „render() i kontekst szablonu” jest bezpłatna?
Tak — pełny tekst „render() i kontekst szablonu” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Django Academy, przejdź na CoddyKit PRO. Kurs Django Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „render() i kontekst szablonu”?
Przekazywać dane z widoku do szablonu Ćwiczysz Django Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Django Academy?
Nie wymagamy żadnego doświadczenia. Django Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „render() i kontekst szablonu”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Django Academy?
Tak. Każda lekcja Django Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- render() i kontekst szablonu
- Tagi i filtry szablonów
- Dziedziczenie szablonów z extends i block
- Tag url i tag static