我可以在Django模板中访问列表中第一个对象的属性吗?

Pau*_*ite 5 django django-templates

我有一个Django模板,它接收上下文变量中的对象列表browsers.

我想选择列表中的第一个对象,并访问其中一个属性,如下所示:

<a class="{{ browsers|first.classified_name }}" href="">{{ browsers|first }}</a>
Run Code Online (Sandbox Code Playgroud)

但是,我收到与属性选择相关的语法错误.classified_name.

有什么办法可以选择列表中第一个对象的属性吗?

Ber*_*ant 10

您可以使用with-templatetag:

{% with browsers|first as first_browser %}
    {{ first_browser.classified_name }}
{% endwith %}
Run Code Online (Sandbox Code Playgroud)


Man*_*dan 5

@ lazerscience的回答是正确的.另一种实现此目的的方法是直接使用索引.例如

{% with browsers.0 as first_browser %}
    <a class="{{ first_browser.classified_name }}" href="">{{ first_browser }}</a>
{% endwith %}
Run Code Online (Sandbox Code Playgroud)