DRF项目之自定义分页器

在项目中,我们多需要自定义分页器。

代码实现:

class PageNum(PageNumberPagination):
    '''自定义分页器'''
    # 每页显示个数
    page_size = 10
    
    page_size_query_param = 'pagesize'
    # 每页最多显示个数
    max_page_size = 20

    # 重写get_paginated_response方法,实现自定义返回值
    def get_paginated_response(self, data):

        return Response({
            "count": self.page.paginator.count,
            "lists": data,
            "page": self.page.number,
            "pages": self.page.paginator.num_pages,
            "pagesize": self.page_size
        })

而且,在分页器中,我们可以通过重写get_paginated_response方法,来实现自定义响应数据。

猜你喜欢

转载自www.cnblogs.com/chao666/p/12309137.html
今日推荐