Django自带的分页函数Pagination使用

Django自带的分页函数使用

Django自带了一个分页函数,可以直接使用该函数进行分页数据展示,下面直接上代码看具体用法

具体使用

	from django.core.paginator import Paginator, PageNotAnInteger, EmptyPage
	
    cases = ['case01','case02','case03','case04','case05']
    # 将cases进行分页处理  每页5条数据
    p = Paginator(cases, 5)
    # 获取前端传回来的页数
    current_page = request.GET.get('current_page')
    try:
        page_cases = p.page(current_page)  # 获取当前页的测试用例
    except PageNotAnInteger:
        page_cases = p.page(1)  # 页数非整数时直接返回第一页
    except EmptyPage:
        page_cases = p.page(1)  # 页数为空时返回第一页
    
    param = {"cases": page_cases}
    return render(request, 'target.html', param)

页面接收并使用

<ul style="float: right" class="pagination">

        <li>
        	{# 查看是否有上一页 #}
             {% if cases.has_previous %}
             	{# cases.previous_page_number获取上一页页数 #}
                 <a href="/target?current_page={{ cases.previous_page_number }}">上一页</a>
             {% else %}
                 <a disabled="true" href="#">上一页</a>
             {% endif %}
         </li>

		{# 遍历页数 #} 
     {% for page in cases.paginator.page_range %}
         <li>
          <a href="/target?current_page={{ page }}">{{ page }}</a>
         </li>
     {% endfor %}

     <li>
     	{# 查看是否有下一页 #}
         {% if cases.has_next %}
         	{# cases.next_page_number获取下一页页数 #}
             <a href="/target?current_page={{ cases.next_page_number }}">下一页</a>
         {% else %}
             <a style="" disabled="true" href="#">下一页</a>
         {% endif %}
     </li>
 </ul>

django分页函数还有别的用法可以参考官方文档

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值