RestFramework之注册器、响应器与分页器
一、注册器的说明与使用
在我们编写url时经常会因请求方式不同,而重复编写某条url,而rest_framework中的注册器帮我节省了很多代码
下面介绍一下如何使用
# 利用注册器来实现路由分发
from rest_framework import routers # 导入
router = routers.DefaultRouter() # 实例化对象
router.register('book',views.BookView) # 注册
还需要在urlpatterns中加入
re_path('^',include(router.urls))
还有更多功能如直接查看数据格式等等
二、响应器的使用
响应器的作用就是让浏览器不在返回django rest_framework做的那个网页,而是直接返回数据

使用方法:
1.首先在views导入
from rest_framework.renderers import JSONRenderer # 响应器
2.在视图类中设置,指定返回类
render_classes = [JsonRender]
全都配置好之后再去访问浏览器时就不会在返回页面了

三、分页器的使用
分页器的使用:
- 导入模块
from rest_framework.pagination import PageNumberPagination - 获取数据
books = Book.objects.all() - 创建一个分页器对象
paginater = PageNumberPagination() - 开始分页
paged_books = paginater.paginate_queryset(books, request) - 开始序列化
serialized_books = BookSerializer(paged_books, many=True) - 返回数据
return Response(serialized_books.data)
当我们用到视图类中继承ModelViewSet时需要自己编写分页类
1.首先需要导入模块
from rest_framework.pagination import PageNumberPagination
2.编写分页器
class ThePagination(PageNumberPagination):
page_size = 2 # 每次获取的数量
page_query_param = 'page' # url上的page参数
page_size_query_param = 'size' # 临时要取数据的时候,可以在url上加的参数size
max_page_size = 4 # 限制最多可以获取数据的多少
3.最后还要在视图类中加入
pagination_class = ThePagination # 分页器
测试一下:

RestFramework之注册器、响应器与分页器的更多相关文章
- rest认证组件,权限组件,频率组件,url注册器,响应器组件,分页器组件
1.认证组件 1.1 认证组件利用token来实现认证 1.2 token认证的大概流程 用户登录===>获取用户名和密码===>查询用户表 如果用户存在,生成token,否则返回错误信息 ...
- DRF之注册器响应器分页器
概要 url注册器 响应器 分页器 url注册器 通过DRF的视图组件,数据接口逻辑被我们优化到最剩下一个类,接下来,我们使用DRF的url控制器来帮助我们自动生成url,使用步骤如下: 第一步:导入 ...
- rest-framework频率组件、url注册器、响应器、分页器
频率组件 import time from rest_framework.throttling import BaseThrottle,SimpleRateThrottle IP_DICT = {} ...
- DRF(5) - 频率组件、url注册器、响应器、分页器
一.频率组件 1.使用DRF简单频率控制实现对用户进行访问频率控制 1)导入模块,定义频率类并继承SimpleRateThrottle # 导入模块 from rest_framework.throt ...
- Restful 4 -- 认证组件、权限组件、频率组件、url注册器、响应器、分页器
一.认证组件.权限组件.频率组件总结: 只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件 1.认证组件格式 写一个认 ...
- DRF之注册器、响应器、分页器
一.url注册器 通过DRF的视图组件,数据接口逻辑被我们优化到最剩下一个类,接下来,我们使用DRF的url控制器来帮助我们自动生成url,使用步骤如下: 第一步:导入模块 1 from rest_f ...
- django url注册器组件, 响应器组件, 分页器组件
一.url注册器的使用 1.1导入模块 from django.urls import re_path, include from .serializer import views from rest ...
- DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件
DjangoRestFramework学习三之认证组件.权限组件.频率组件.url注册器.响应器.分页组件 本节目录 一 认证组件 二 权限组件 三 频率组件 四 URL注册器 五 响应器 六 分 ...
- day91 DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件
DjangoRestFramework学习三之认证组件.权限组件.频率组件.url注册器.响应器.分页组件 本节目录 一 认证组件 二 权限组件 三 频率组件 四 URL注册器 五 响应器 六 分 ...
随机推荐
- Swift编码总结2
1.swift如何隐藏在 iPad 上的 quicktype 键盘工具栏? let item = textField.inputAssistantItem item.leadingBarButtonG ...
- docker build时改变docker中的apt源
# Ali apt-get source.list RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \ echo & ...
- Linux虚拟机的命令分发工具。
deploy.sh工具的目的是,将一个文件,发送到其他服务器上面去. runRemoteCmd.sh工具的目的是,将一个命令,在多台服务器上执行. depoly.conf是上面两个工具的配置文件. d ...
- SpringBoot学习笔记:Redis缓存
SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括Stri ...
- C# 邮件发送遇到的错误
记录写邮件发送功能遇到的一些错误 1.System.Net.Mail.SmtpException:“Transaction failed. The server response was: DT:SP ...
- [OpenCV开发]OpenCV图像编码和解码 imencode和imdecode使用,用于网络传输图片
在很多应用中,经常会直接把图片的二进制数据进行交换,比如说利用 socket 通信传送图片二进制数据,或者直接用内存数据库(例如 Redis)来传递图片二进制数据. 这个时候,当你的应用程序读到内存里 ...
- HTTP权威指南-概述
URI 统一资源标识符 类似于邮件地址,邮箱. URL 统一资源定位符 URN 统一资源名 HTTP方法 get post put delete post head 状态码 200 OK 302 重定 ...
- LeetCode 172. 阶乘后的零(Factorial Trailing Zeroes)
172. 阶乘后的零 172. Factorial Trailing Zeroes 题目描述 给定一个整数 n,返回 n! 结果尾数中零的数量. LeetCode172. Factorial Trai ...
- django初识1
django django初识 django的本质就是基于socket通信 一.127.0.0.1 本地回环地址 后面:8001是端口号 /ppt是根目录下的ppt子网页 二./当前网站的客户端(根目 ...
- Django模板语言中的Filters的使用方法
Filters可以称为过滤器.下面我们简单介绍是如何使用他的. Filters的语法: {{ value|filter_name:参数 }} Django大概提供了六十个内置过滤器,下面我们简单介绍几 ...