Я отримую масив, arr
переданий моєму шаблону Django. Я хочу отримати доступ до окремих елементів масиву в масиві (наприклад arr[0]
, arr[1]
) і т.д., а не переглядати весь масив.
Чи є спосіб зробити це в шаблоні Django?
Я отримую масив, arr
переданий моєму шаблону Django. Я хочу отримати доступ до окремих елементів масиву в масиві (наприклад arr[0]
, arr[1]
) і т.д., а не переглядати весь масив.
Чи є спосіб зробити це в шаблоні Django?
Відповіді:
Пам'ятайте, що позначення крапок у шаблоні Django використовується для чотирьох різних позначень на Python. У шаблоні foo.bar
може означати будь-який із:
foo[bar] # dictionary lookup
foo.bar # attribute lookup
foo.bar() # method call
foo[bar] # list-index lookup
Він пробує їх у такому порядку, поки не знайде відповідності. Так foo.3
ви отримаєте ваш індекс списку, тому що ваш об’єкт не є диктатом, у якому 3 є ключовим, не має атрибута з ім'ям 3 та не має методу з ім'ям 3.
foo['bar']
?
arr.0
arr.1
тощо.
Ви можете отримати доступ до елементів послідовності за допомогою arr.0 arr.1 тощо. Додаткову інформацію див. У розділі Система шаблонів Django у книзі django.
коли ви render
звертаєтесь із проханням отримати coctext
інформацію: для Exampel:
return render(request, 'path to template',{'username' :username , 'email'.email})
Ви можете отримати доступ до нього на такий шаблон:
for variabels :
{% if username %}{{ username }}{% endif %}
for array :
{% if username %}{{ username.1 }}{% endif %}
{% if username %}{{ username.2 }}{% endif %}
Ви також можете назвати об'єкти масиву в views.py
і десять використовувати його так:
{% if username %}{{ username.first }}{% endif %}
якщо є інша проблема, я хочу вам допомогти
arr.0
,arr.1
... Інше рішення: написати свій власний тег шаблонуarr|array_item: "0"
або що - щось на зразок цього.