首页 > 其他 > 详细

偏移分页

时间:2019-08-01 19:26:25      阅读:95      评论:0      收藏:0      [点我收藏+]

基本使用:

-page=LimitOffsetPagination实例化产生对象
-返回值=page.paginate_queryset(ret,request,self):ret是要分页的所有数据,
-再序列化,序列化该返回值
1
2
3
四个参数:

#从标杆位置往后取几个,默认取3个,我可以指定
page.default_limit=3
#每次取得条数
page.limit_query_param=‘limit‘
#标杆值,现在偏移到哪个位置,如果offset=6 表示当前在第6条位置上,往后取
page.offset_query_param=‘offset‘
#最大取10条
page.max_limit=10
1
2
3
4
5
6
7
8
from rest_framework.pagination import LimitOffsetPagination
class PublishView(APIView):
def get(self, request, *args, **kwargs):
ret = models.Publish.objects.all()
# 实例化产生一个偏移分页对象
page = LimitOffsetPagination()
#四个参数:
#从标杆位置往后取几个,默认取3个,我可以指定
page.default_limit=3
#每次取得条数
page.limit_query_param=‘limit‘
#标杆值,现在偏移到哪个位置,如果offset=6 表示当前在第6条位置上,往后取
page.offset_query_param=‘offset‘
#最大取10条
page.max_limit=10
ret_page = page.paginate_queryset(ret, request, self)
# 序列化
pub_ser = serializer.PublishSerializers(ret_page, many=True)
# 去setting中配置每页显示多少条
return page.get_paginated_response(pub_ser.data)
# return Response(pub_ser.data)
--------------------- 

偏移分页

原文:https://www.cnblogs.com/hyhy904/p/11284653.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!