我在模板中有一个queryset
结果:
{% for image in product.productimages_set.all %}
<img src="{{ image.image_file.url }}"/>
{% endfor %}
我如何在模板中访问该对象的索引,即:
<img src="{{ product.productimages_set.all.0 }}"/>
可以使用forloop.counter 访问索引
{% for image in product.productimages_set.all %}
{% if forloop.counter == 0 %}
<img src="{{ image.image_file.url }}"/>
{% else %}
{% if forloop.counter == 1 %}
<img src="{{ image.image_file.url }}"/>
{% endif %}
{% endfor %}
Django支持在查询集上使用.first((和.last((:
# Query from the view.py
first_element = Product.objects.first()
last_element = Product.objects.last()
products = list(Product.objects.all())
first_element = products[0]
last_element = products[-1]
# Query from HTML
{{ product.productimages_set.all.first.image_file.url }}
{{ product.productimages_set.all.last.image_file.url }}