首页 > 其他分享 >Django序列化器配置分页器

Django序列化器配置分页器

时间:2022-12-23 10:35:24浏览次数:39  
标签:paginator 分页 self queryset Django 序列化 data serializer

1.编写分页器方法

from rest_framework import pagination

class Pagination(pagination.PageNumberPagination):
    def get_paginated_data(self, data):
        return {
            "total": self.page.paginator.count,
            "data": data
        }

    def get_paginated_response(self, data):
        return build_ret(total=self.page.paginator.count, data=data)

2.在Django的Settings里面添加配置

REST_FRAMEWORK = {
    # 下面的Pagination就是上面写的类文件地址
    'DEFAULT_PAGINATION_CLASS': 'util.pagination.Pagination',
    'PAGE_SIZE': 10
}

3.配合序列化器一起使用

from django.http import JsonResponse

class PlanView(ListAPIView):
    """
    计划列表
    """
    queryset = user_model.Plan.objects.filter().order_by("-id")
    serializer_class = PlanSerializer

    def list(self, request, *args, **kwargs):
        data_list = self.paginate_queryset(self.filter_queryset(self.get_queryset()))
        serializer = PlanSerializer(data_list, many=True)
        return JsonResponse("total": self.paginator.page.paginator.count, "data": serializer.data)

 

标签:paginator,分页,self,queryset,Django,序列化,data,serializer
From: https://www.cnblogs.com/SlookUp/p/17000145.html

相关文章

  • Gridview排序与分页-不使用“DataSourceControl DataSource”的情况下如何分页和排序
    如果你在GridView控件上设置AllowPaging="true"orAllowSorting="true"而没有使用使用数据源控件DataSource(i.e.SqlDataSource,ObjectDataSource),运行则会出现下列......
  • django、中间件、cookie、session、csrf
    目录今日内容详细今日内容详细django中间件三个了解的方法基于django中间件的功能设计cookie与session简介django操作cookiedjango操作session今日内容详细django中间件......
  • Django框架课-创建菜单界面:二、完善项目结构
    二、完善项目结构界面编写配置完静态文件夹,然后就可以写html界面在game/templates下新建menu、playground、settings三个文件夹支持多终端(web、acapp等多端),要额外新......
  • django中间键、cookie与session简介、django操作cookie、django操作session
    django中间件如何自定义中间件django中间件三个了解方法基于django中间件的功能设计cookie与session简介django操作cookiecookie实操django操作ses......
  • Django-中间件
    1.Django中间件及两个重要方法1.django有7个中间件,并且还支持用户自定义中间件。2.当我们完成一些全局相关的功能(例如用户访问频率)、权限(中间件会获取到用户的权限......
  • Django-cookie和session
    1.cookies与session简介1.最早期的互联网不需要保存用户信息,所有用户哪怕之前成功登陆每次用户登录也要重新输入账号和密码。2.cookie:保存在客户端与用户状态相关的数......
  • 12月22日内容总结——django中间件的三个了解要求的方法、基于django中间件的功能设计
    目录一、django中间件三个了解的方法二、django中间件五个方法的执行流程详解三、基于django中间件的功能设计功能设计介绍如何利用字符串导入模块功能模拟四、cookie与ses......
  • django中的orm
    fromdjango.dbimportmodels#Createyourmodelshere."""1.定义模型类2.模型迁移2.1先生成迁移文件(不会在数据库中生成表,只会创建一个数据表和模型的对应关系)......
  • django之cookie与session
    目录cookie与session简介django操作cookiedjango操作sessioncookie与session简介"""回忆:HTTP协议四大特性 1.基于请求响应 2.基于TCP、IP作用于应用层之上的协议 3.......
  • django之中间件(middleware)
    django之中间件(middleware)在之前一篇博文中,有关django的请求流程中,我们关于中间件这一层并没有详细的介绍,在这张图中,我们将中间层定义为django网关层和路由层的过渡层,那么......