Menu
CoddyTech

Переменные шаблона

Часть раздела Основы Django путешествия по Django на Coddy. Урок 12 из 23.

На главной странице должно быть указано сегодняшнее специальное предложение, а оно хранится в Python, в DRINKS. Представление передаёт данные шаблону через третий аргумент render() — контекст: словарь имён, которые может использовать шаблон.

def team(request):
    barista = {"name": "Maya", "since": 2024}
    return render(request, "menu/team.html", {"barista": barista})
{{ barista }} выводит значение. Точка позволяет обратиться к его содержимому: {{ barista.name }} получает значение ключа словаря или атрибута объекта.
<p>{{ barista.name }} has made your coffee since {{ barista.since }}.</p>

Шаблоны — это не Python: barista["name"] вызовет ошибку, а имя, которого нет в контексте, ничего не выведет и не вызовет ошибку. Если значение не отображается на странице, сначала проверьте его написание.

challenge icon

Задание

Легко
  • Передайте флэт уайт из DRINKS в шаблон из представления home как special.
  • В home.html после первого абзаца добавьте <p>Today's special: Flat White</p>, используя название из контекста.

Нажмите Запустить: на главной странице отображается название сегодняшнего специального предложения.

Попробуйте сами

<!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 iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы Django

Потренируйтесь самостоятельно: Песочница Django