【发布时间】:2011-04-01 00:53:53
【问题描述】:
在我的博客应用程序中,我想显示博客文章列表以及与该文章相关联的第一张图片。现在我这样做:
{% for image in entry.image_set.all|slice:"1" %}
<img src="{{ image.get_absolute_url }}">
{% endfor %}
是否有我不知道的模板快捷方式,或者我应该编写自己的管理器?
【问题讨论】:
在我的博客应用程序中,我想显示博客文章列表以及与该文章相关联的第一张图片。现在我这样做:
{% for image in entry.image_set.all|slice:"1" %}
<img src="{{ image.get_absolute_url }}">
{% endfor %}
是否有我不知道的模板快捷方式,或者我应该编写自己的管理器?
【问题讨论】:
不会更短,但您可以使用 first:
{% with entry.image_set.all|first as image %}
<img src="{{ image.get_absolute_url }}">
{% endwith %}
【讨论】:
从 Django 1.6 开始你可以这样做
<img src="{{ entry.image_set.first.get_absolute_url }}">
【讨论】:
我有以下查询集,我只想在 jinja 模板中从中检索第一个元素。
<QuerySet [<StudentDetails: StudentDetails object (1)>, <StudentDetails: StudentDetails object (2)>]>
解决方案
{{ StudentDetails.first.name }}
StudentDetails 是我的模特
【讨论】:
您还可以这样做:
entry.image_set.all.0 在您的模板中。
【讨论】: