django paginator - как показать все доступные номера страниц
у меня есть простой вопрос:
у меня есть это {{ objects.paginator.num_pages }}
в шаблоне, который дает мне общее количество страниц, которые содержат элементы.
теперь я хочу показать эти номера страниц, как это
1 | 2 | 3 | 4 | 5
для этого мне нужно сделать дляпеременная элемента до the num_pages
. как for i to num_pages
.
как это возможно в шаблоне django? я читаю некоторые фрагменты, но их немного трудно понять для меня.
2 ответов
можно использовать page_range
{% for page in objects.paginator.page_range %}
{% if forloop.counter != 1 %} | {% endif %}
{{ page }}
{% endfor %}
отформатирован с помощью Twitter bootstrap и ссылок:
<ul class="pagination nav navbar-nav">
{% if objects.has_previous %}
<li><a href="?page={{ objects.previous_page_number }}">Prev</a></li>
{% endif %}
{% for page in objects.paginator.page_range %}
<li class="{% if objects.number == page %}active{% endif %}"><a href="?page={{page }}">{{ page }}</a></li>
{% endfor %}
{% if objects.has_next %}
<li> <a href="?page={{ objects.next_page_number }}">Next</a></li>
{% endif %}
</ul>