实现DRF的普通分页、定制分页

文档:Pagination

普通分页:

"""
项目的setting文件
"""
REST_FRAMEWORK = {
    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.LimitOffsetPagination',
    'PAGE_SIZE': 100    #每页的记录数
}

定制分页:

1、把上面的配置注释掉

2、在views文件导入分页器:

from rest_framework.pagination import PageNumberPagination

3、在views编写分页类:

class GoodsPagination(PageNumberPagination):
    page_size = 10                        #每页的记录数
    page_size_query_param = 'page_size'   #获取url参数中设置的每页显示数据条数
    page_query_param = "p"                #传递的参数:页码
    max_page_size = 100       

4、在视图类中指定分页类:

class GoodsListViewSet(mixins.ListModelMixin, viewsets.GenericViewSet):
    ···
    pagination_class = GoodsPagination

实现DRF的普通分页、定制分页_第1张图片

实现DRF的普通分页、定制分页_第2张图片

 

你可能感兴趣的:(Django,REST,framework,Pagination,分页,drf)