Django Templating: как получить доступ к свойствам первого элемента в списке

Довольно просто. У меня есть список Python, который я передаю в шаблон Django.

Я могу получить доступ к первому элементу в этом списке, используя

{{ thelist|first }}

Однако я также хочу получить доступ к свойству этого элемента... в идеале вы бы подумали, что он будет выглядеть следующим образом:

{{ thelist|first.propertyName }}

Но, увы, это не так.

Есть ли какое-либо решение шаблона для этого, или я просто собираюсь найти дополнительную переменную шаблона...

Ответ 1

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

{{ thelist.0.propertyName }}

Ответ 2

Вы можете комбинировать тег шаблона with с фильтром шаблона first для доступа к свойству.

{% with thelist|first as first_object %}
    {{ first_object.propertyname }}
{% endwith %}

Ответ 3

Если вы пытаетесь получить доступ к многотоварному полю, не забудьте добавить all, чтобы он выглядел как object.m2m_field.all.0.item_property