一、注册器的说明与使用

  在我们编写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之注册器、响应器与分页器的更多相关文章

  1. rest认证组件,权限组件,频率组件,url注册器,响应器组件,分页器组件

    1.认证组件 1.1 认证组件利用token来实现认证 1.2 token认证的大概流程 用户登录===>获取用户名和密码===>查询用户表 如果用户存在,生成token,否则返回错误信息 ...

  2. DRF之注册器响应器分页器

    概要 url注册器 响应器 分页器 url注册器 通过DRF的视图组件,数据接口逻辑被我们优化到最剩下一个类,接下来,我们使用DRF的url控制器来帮助我们自动生成url,使用步骤如下: 第一步:导入 ...

  3. rest-framework频率组件、url注册器、响应器、分页器

    频率组件 import time from rest_framework.throttling import BaseThrottle,SimpleRateThrottle IP_DICT = {} ...

  4. DRF(5) - 频率组件、url注册器、响应器、分页器

    一.频率组件 1.使用DRF简单频率控制实现对用户进行访问频率控制 1)导入模块,定义频率类并继承SimpleRateThrottle # 导入模块 from rest_framework.throt ...

  5. Restful 4 -- 认证组件、权限组件、频率组件、url注册器、响应器、分页器

    一.认证组件.权限组件.频率组件总结:  只有认证通过的用户才能访问指定的url地址,比如:查询课程信息,需要登录之后才能查看,没有登录,就不能查看,这时候需要用到认证组件 1.认证组件格式 写一个认 ...

  6. DRF之注册器、响应器、分页器

    一.url注册器 通过DRF的视图组件,数据接口逻辑被我们优化到最剩下一个类,接下来,我们使用DRF的url控制器来帮助我们自动生成url,使用步骤如下: 第一步:导入模块 1 from rest_f ...

  7. django url注册器组件, 响应器组件, 分页器组件

    一.url注册器的使用 1.1导入模块 from django.urls import re_path, include from .serializer import views from rest ...

  8. DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件

    DjangoRestFramework学习三之认证组件.权限组件.频率组件.url注册器.响应器.分页组件   本节目录 一 认证组件 二 权限组件 三 频率组件 四 URL注册器 五 响应器 六 分 ...

  9. day91 DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件

    DjangoRestFramework学习三之认证组件.权限组件.频率组件.url注册器.响应器.分页组件   本节目录 一 认证组件 二 权限组件 三 频率组件 四 URL注册器 五 响应器 六 分 ...

随机推荐

  1. Swift编码总结2

    1.swift如何隐藏在 iPad 上的 quicktype 键盘工具栏? let item = textField.inputAssistantItem item.leadingBarButtonG ...

  2. docker build时改变docker中的apt源

    # Ali apt-get source.list RUN mv /etc/apt/sources.list /etc/apt/sources.list.bak && \ echo & ...

  3. Linux虚拟机的命令分发工具。

    deploy.sh工具的目的是,将一个文件,发送到其他服务器上面去. runRemoteCmd.sh工具的目的是,将一个命令,在多台服务器上执行. depoly.conf是上面两个工具的配置文件. d ...

  4. SpringBoot学习笔记:Redis缓存

    SpringBoot学习笔记:Redis缓存 关于Redis Redis是一个使用ANSI C语言编写的免费开源.支持网络.可基于内存亦可以持久化的日志型.键值数据库.其支持多种存储类型,包括Stri ...

  5. C# 邮件发送遇到的错误

    记录写邮件发送功能遇到的一些错误 1.System.Net.Mail.SmtpException:“Transaction failed. The server response was: DT:SP ...

  6. [OpenCV开发]OpenCV图像编码和解码 imencode和imdecode使用,用于网络传输图片

    在很多应用中,经常会直接把图片的二进制数据进行交换,比如说利用 socket 通信传送图片二进制数据,或者直接用内存数据库(例如 Redis)来传递图片二进制数据. 这个时候,当你的应用程序读到内存里 ...

  7. HTTP权威指南-概述

    URI 统一资源标识符 类似于邮件地址,邮箱. URL 统一资源定位符 URN 统一资源名 HTTP方法 get post put delete post head 状态码 200 OK 302 重定 ...

  8. LeetCode 172. 阶乘后的零(Factorial Trailing Zeroes)

    172. 阶乘后的零 172. Factorial Trailing Zeroes 题目描述 给定一个整数 n,返回 n! 结果尾数中零的数量. LeetCode172. Factorial Trai ...

  9. django初识1

    django django初识 django的本质就是基于socket通信 一.127.0.0.1 本地回环地址 后面:8001是端口号 /ppt是根目录下的ppt子网页 二./当前网站的客户端(根目 ...

  10. Django模板语言中的Filters的使用方法

    Filters可以称为过滤器.下面我们简单介绍是如何使用他的. Filters的语法: {{ value|filter_name:参数 }} Django大概提供了六十个内置过滤器,下面我们简单介绍几 ...