rest_framework-分页
分页
from django.shortcuts import render
# Create your views here.
from rest_framework import serializers
from rest_framework.views import APIView
from .models import *
from rest_framework.response import Response
from rest_framework.pagination import PageNumberPagination
class MySerializer(serializers.ModelSerializer):
class Meta:
model = Roles
fields = '__all__'
class MyPagination(PageNumberPagination):
page_size = 1
page_query_param = 'page'
page_size_query_param = 'page_size'
max_page_size = 50
class MyView(APIView):
def get(self, request, *args, **kwargs):
queryset = Roles.objects.all()
pagers = MyPagination()
instance = pagers.paginate_queryset(queryset, request, self)
serializer = MySerializer(instance=instance, many=True)
return Response(serializer.data)
- PageNumberPagination:需要在rest-framework的setting配置:'PAGE_SIZE'
- 使用
- 先实例化一个分页对象
- 调用实例化对象的paginate_queryset方法,这个方法接受3个参数,查询的queryset对象,request,view
- 序列化
- 返回
- 自定义分页对象
- 需继承PageNumberPagination
- 设置默认的page_size
- page_query_param: 设置该参数,可以从url的参数里面获取请求页数
- page_size_query_param: 设置该参数,可以从url的参数里面获取请求页数大小
- max_page_size: 设置该参数,限制一页请求的大小,防止恶意请求
rest_framework-分页的更多相关文章
- rest_framework 分页三种
.分页 a. 分页 看第n页 每页显示n条数据: b. 分页 在某个位置 向后查看多少条数据 c. 加密分页 上一页和下一页 本质:查看 记住页码id的最大值和最小值 通过其来准确扫描 过去的话 会从 ...
- django rest_framework 分页出现报错
1.出现: WARNINGS: ?: (rest_framework.W001) You have specified a default PAGE_SIZE pagination rest_fram ...
- Django rest framework(7)----分页
目录 Django rest framework(1)----认证 Django rest framework(2)----权限 Django rest framework(3)----节流 Djan ...
- rest_framework框架的认识
它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架. 一 路由 可以通过路由as_view()传参 根据请求方式的不同执行对应不同的方法 在routers模块下 封装了很多关于 ...
- 10.30 rest_framework总结
2018-10-30 20:25:23 终于学完了rest_framework 这个框架! 这个框架有一些基本组件!最重要的就是看源码!要一个类一个类的去找!按顺序! 并且要自己配置类的时候要先看源 ...
- rest_framework框架
rest_framework框架的认识 它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架. 一 路由 可以通过路由as_view()传参 根据请求方式的不同执行对应不同的方法 ...
- (生鲜项目)08. ModelSerializer 实现商品列表页, 使用Mixin来实现返回, 以及更加方便的ListAPIView, 以及分页的设置
第一步: 学会使用ModelSerializer, 并且会使用ModelSerializer相互嵌套功能 1. goods.serializers.py from rest_framework imp ...
- 关于django中的rest_framework的使用
rest_framework框架的认识 它是基于Django的,帮助我们快速开发符合RESTful规范的接口框架. 一 路由 可以通过路由as_view()传参 根据请求方式的不同执行对应不 ...
- Django REST framework+Vue 打造生鲜超市(四)
五.商品列表页 5.1.django的view实现商品列表页 (1)goods/view_base.py 在goods文件夹下面新建view_base.py,为了区分django和django res ...
- drf 认证、权限、限流、过滤、排序、分页器
认证Authentication 准备工作:(需要结合权限用) 1. 需要使用到登陆功能,所以我们使用django内置admin站点并创建一个管理员. python manage.py creates ...
随机推荐
- IE8使用chrome内核渲染
1 第一步 https://download.csdn.net/download/qq_34626479/11223448 下载chrome frame安装包; 2 第二步 网页头部添加一行 ...
- JVM 参数(转)
Herry灬凌夜 转自:https://www.cnblogs.com/wuyx/p/9627542.html 常用的JVM配置参数 一.Trace 跟踪参数 在Eclipse中,如何打开GC的监控 ...
- 在5G+AI+Cl 拉动互联网走向物联网
大家好我是浅笑若风,今天在这里和大家聊聊的是:5G+AI+CL拉动互联网走向物联网 在虫洞时空里我们早已能遇见到世界的尽头会是什么样子,微服务,微生活的迅速发展的时代.我们在虚拟的多次元世界购物.交易 ...
- oracle中plsql练习题-----编写一个PL/SQL块,输出所有员工的员工姓名、员工号、工资和部门号
一.思路:首先输出需要变量接收,需要声明变量,于是考虑什么变量类型比较合适,在这我用的是table类型,最后,查询出来,循环输出即可. 二.具体实现 -- 编写一个PL/SQL块,输出所有员工的员工姓 ...
- 面向对象第四单元(UML)及期末总结
前言 统一建模语言(英语:Unified Modeling Language,缩写 UML),是软件架构设计建模和规约的语言. 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功 ...
- Journal of Proteomics Research | 构建用于鉴定蓖麻毒素的串联质谱库
文章题目:Constructing a Tandem Mass Spectral Library for Forensic Ricin Identification 构建用于鉴定蓖麻毒素的串联质谱库 ...
- Redis 【常识与进阶】
Redis 简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库. Redis 与其他 key - value 缓存产品有以下三个特点: Redis支持数据的持久 ...
- 为什么我推荐你用Ubuntu开发?
前言: 鱼哥在做多媒体开发时,领导倒逼我们用Ubuntu开发,后来才发现它的牛逼和高效.所以对于还在用Windows上开发的朋友,鱼哥建议,趁周末,搞个双系统,切到Ubuntu上开发, Ubuntu最 ...
- 欢乐C++ —— 2. 深复制与浅复制
1. 简述 通俗点讲,深复制与浅复制一般对指针而言, 深复制复制指针所指向的内容, 浅复制复制指针的值. 2. 举例 栗子: 当我们有现在有指针A指向一块数据,和指针B. 深复制- ...
- windows10 64位 安装mysql服务端 并使用navicat客户端链接 掉的一堆坑
1.目的 安装mysql服务端 并使用navicat客户端链接 2.过程 1)下载mysql服务端 下载过程(参考https://blog.csdn.net/youxianzide/article/d ...