分页插件

---恢复内容开始---

注意:

  以下关键字随项目(实际情况)变化而变化

在视图函数中设置分页

def book(request):

all_book_list = model.Book.object.all()
paginator = Paginator(all_publish_list, 5)  # 5 每页显示的数据
page_range = paginator.page_range  #
num = request.GET.get("page", 1)
all_book_list = paginator.page(num)
return render(request, "publish.html",locals()}

在HTML中写入分页视图

<nav aria-label="Page navigation ">
                        <ul class="pagination">

                            {% if all_book_list.has_previous %}
                                <li><a href="/index?page={{ all_book_list.previous_page_number }}"
                                       aria-label="Previous">上一页</a></li>
                            {% else %}
                                <li class="disabled"><a href="" aria-label="Previous">上一页</a></li>
                            {% endif %}

                            {% for index in page_range %}
                                {% if num == index %}
                                    <li class="active"><a href="/index?page={{ index }}">{{ index }}</a></li>
                                {% else %}
                                    <li><a href="/index?page={{ index }}">{{ index }}</a></li>
                                {% endif %}

                            {% endfor %}


                            {% if all_book_list.has_next %}
                                <li><a href="/index?page={{ all_book_list.next_page_number }}"
                                       aria-label="Previous">下一页</a></li>
                            {% else %}
                                <li class="disabled"><a href="" aria-label="Previous">下一页</a></li>
                            {% endif %}

                        </ul>
                    </nav>

---恢复内容结束---

原文地址:https://www.cnblogs.com/yifugui/p/7799637.html