DRF的三种分页方式

微信扫一扫,分享到朋友圈

DRF的三种分页方式

新建一个自定义分页类文件
pagination

普通分页

from rest_framework.pagination import PageNumberPagination
 
class MyPageNumberPagination(PageNumberPagination):
    page_size = 2
    max_page_size = 5
    page_size_query_param = 'size'
    page_query_param = 'page'
    
    '''
    age_query_param:表示url中的页码参数
        page_size_query_param:表示url中每页数量参数
        page_size:表示每页的默认显示数量
        max_page_size:表示每页最大显示数量,做限制使用,避免突然大量的查询数据,数据库崩溃
    '''

切割分页

class MyPageNumberPagination(LimitOffsetPagination):
    default_limit = 2
    limit_query_param = 'limit'
    offset_query_param = 'offset'
    max_limit = 5
    
    '''
    default_limit:表示默认每页显示几条数据
        limit_query_param:表示url中本页需要显示数量参数
        offset_query_param:表示从数据库中的第几条数据开始显示参数
        max_limit:表示每页最大显示数量,做限制使用,避免突然大量的查询数据,数据库崩溃
    '''

加密分页

class MyPageNumberPagination(CursorPagination):
    cursor_query_param = 'cursor'
    page_size = 1
    ordering = 'id'
    page_size_query_param = 'size'
    max_page_size = 1
 
    '''
    cursor_query_param:表示url中页码的参数
        page_size_query_param:表示每页显示数据量的参数
        max_page_size:表示每页最大显示数量,做限制使用,避免突然大量的查询数据,数据库崩溃
        ordering:表示返回数据的排序方式
    '''

分页配置

'DEFAULT_PAGINATION_CLASS': 'tools.pagination.Pagination'

本文为原创文章,未经授权禁止转载本站文章。

原文出处:兰玉磊的个人博客

原文链接:https://www.fdevops.com/2020/09/12/drf-5589

微信扫一扫,分享到朋友圈

DRF的三种分页方式

哈勃捕捉到令人瞩目的球状星团的图像 由成千上万颗恒星组成

上一篇

研究称“潮汐加热”可能使木星卫星变暖

下一篇

你也可能喜欢

DRF的三种分页方式

长按储存图像,分享给朋友