django实现分页功能

需求:在文章显示界面实现分页功能

具体实现:

views.py

def tzgg(request):
    Announcement_list=Notices.objects.filter(NoticeCategory='通知公告').order_by('-NoticeData')
    limit=13
    paginator=Paginator(Announcement_list,limit)
    page=request.GET.get('page',1)#默认跳转到第一页
result=paginator.page(page) return render(request,'tzgg/tzgg.html',{'Announcement_list':result})

 Paginato数据分页工具

前端显示界面:

<ul class="pagination">
    <td>
        <span class="STYLE5"><<</span>
    </td>
    <td class="page">
        <a href="/std_web/tzgg/?page=1">首页</a>
    </td>
    {% if Announcement_list.has_previous %}
        <td class="page">
            <a href="/std_web/tzgg/?page={{ Announcement_list.previous_page_number }}">上页</a>
        </td>
    {% endif %}

    {% for num in Announcement_list.paginator.page_range %}
        <td class="page_number "><a href="/std_web/tzgg/?page={{ num }}">{{ num }}</a>
        </td>
    {% endfor %}

    {% if Announcement_list.has_next %}
        <td class="page">
            <a href="/std_web/tzgg/?page={{ Announcement_list.next_page_number }}">下页</a>
        </td>
    {% endif %}
    <td class="page"><a
            href="/std_web/tzgg/?page={{ Announcement_list.paginator.num_pages }}">尾页</a>
    </td>
    <td>
        <span class="STYLE5">>></span>
    </td>
</ul>
paginator.page_range为获取的总页数
相应js按照需求定义。
原文地址:https://www.cnblogs.com/1998lu/p/9985800.html