Menu
CoddyTech

Zmienne w szablonach

Część sekcji Podstawy Django ścieżki Django w Coddy. Lekcja 12 z 23.

Strona główna powinna podawać dzisiejszą ofertę specjalną, a oferta ta znajduje się w Pythonie, w DRINKS. Widok przekazuje dane do szablonu przez trzeci argument funkcji render(), czyli kontekst: słownik nazw, których szablon może używać.

def team(request):
    barista = {"name": "Maya", "since": 2024}
    return render(request, "menu/team.html", {"barista": barista})
{{ barista }} wyświetla wartość. Kropka pozwala zajrzeć do jej wnętrza: {{ barista.name }} odczytuje klucz słownika lub atrybut obiektu.
<p>{{ barista.name }} has made your coffee since {{ barista.since }}.</p>

Szablony to nie Python: barista["name"] jest błędem, a nazwa, której nie ma w kontekście, niczego nie wyświetla i nie powoduje błędu. Gdy na stronie brakuje jakiejś wartości, najpierw sprawdź jej pisownię.

challenge icon

Wyzwanie

Łatwy
  • Spraw, aby widok home przekazywał flat white z DRINKS do szablonu jako special.
  • W pliku home.html, po pierwszym akapicie, dodaj <p>Today's special: Flat White</p>, pobierając nazwę z kontekstu.

Naciśnij Uruchom: na stronie głównej pojawi się nazwa dzisiejszej oferty specjalnej.

Spróbuj swoich sił

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Corner Café</title>
</head>
<body>
    <h1>Welcome to Corner Café</h1>
    <p>Fresh coffee and cake every day.</p>
    <a href="{% url 'menu:about' %}">About us</a>
</body>
</html>
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy Django

Poćwicz samodzielnie: Edytor online Django