Переменная context в функции render
- Переменная
context
в функции render
отвечает за передачу данных из представления в шаблон.
- Она представляет собой объект, похожий на словарь, сопоставляющий ключи со значениями.
- Эти значения становятся доступными в шаблоне для использования при рендеринге HTML.
Обращение к данным из context в шаблоне
- Для доступа к данным из
context
в шаблоне используются двойные фигурные скобки {{ }}.
- Внутри фигурных скобок указывается ключ, соответствующий значению в
context
.
- Нельзя указать сразу несколько значений внутри фигурных скобок (в том числе через запятую).
- Пробелы внутри фигурных скобок игнорируются и используются только для более удобного визуального форматирования.
Пример:
def my_view(request):
name = 'John'
age = 30
context = {'name': name, 'age': age}
return render(request, 'my_template.html', context=context)
Шаблон:
<p>Name: {{ name }}, Age: {{ age }}</p>
Типы данных, передаваемые через context
- Простые значения: строки, числа, булевы значения и т.д.
- Сложные типы: словари, списки, объекты и т.д.
Обращение к элементам коллекций (через точку):
- Словари: доступ к значениям по ключу. Важно помнить, что нельзя обращаться к ключу, используя следующий синтаксис -
dct[’key’]
, это приведёт к ошибке - TemplateSyntaxError
. Корректным обращением будет - dct.key
.
- Списки: доступ к элементам по индексу или с помощью цикла
for
. Аналогично предыдущему пункту, не использовать обращение по индексу через квадратные скобки - lst[0]
, использовать обращение через точку - lst.0
.