在 Django 模板中操作 forloop 计数器

Manipulating forloop counter in Django template

我有一个分页的 Django 模板,我在其中循环遍历列表的元素并显示它们。我希望超链接显示在列表的最顶部,并且 只显示在第一页,而不是后续页面。

我目前将该超链接包含在 {% if forloop.counter == 1 %}{% endif %} 中。

但是,这会在每一页的开头输出超链接。如何将其仅限于第一页?

像这样的?

{% if forloop.first and items.number == 1 %}{% endif %}

{% if forloop.first and not items.has_previous %}

"items" 必须替换为您呈现给模板的分页项目

如果您正在使用 Django Pagination to get the paginated queryset, you can access the current page number using Page.number:

The 1-based page number for this page.

如果页面中有 object_list,则可以仅在第一页(在 for 循环之外)包含超链接:

{% if object_list.number == 1 %}
    your hyperlink goes here
{% endif %}
{{ page_obj.start_index|add:forloop.counter0 }}