返回顶部
摘要: DRF之rest ful规范 DRF之序列化器 DRF之视图 DRF之路由 DRF之版本控制 DRF之认证 DRF之权限 DRF之限流(频率) DRF之分页器 DRF之解析器 DRF之渲染器 阅读全文
posted @ 2020-10-14 22:36 muguangrui 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 一. DRF分页器 我们数据库有几千万条数据,这些数据需要展示,我们不可能直接从数据库把数据全部读取出来,这样会给内存造成特别大的压力,有可能还会内存溢出,所以我们希望一点一点的取,那展示的时候也是一样的,总是要进行分页显示。 DRF给我们提供了三种分页方式,我们看下他们都是什么样的。 1.分页组件 阅读全文
posted @ 2020-10-14 22:31 muguangrui 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 一. DRF频率 开放平台的API接口调用需要限制其频率,以节约服务器资源和避免恶意的频繁调用。 1. 频率组件原理 DRF中的频率控制基本原理是基于访问次数和时间的,当然我们可以通过自己定义的方法来实现。 当我们请求进来,走到我们频率组件的时候,DRF内部会有一个字典来记录访问者的IP, 以这个访 阅读全文
posted @ 2020-10-14 21:41 muguangrui 阅读(67) 评论(0) 推荐(0) 编辑
摘要: 一. DRF权限 我们看过源码已经知道了,认证完了后,就开始权限的校验。 表结构: from django.db import models # Create your models here. class UserInfo(models.Model): username = models.Char 阅读全文
posted @ 2020-10-14 21:14 muguangrui 阅读(93) 评论(0) 推荐(0) 编辑
摘要: 一. DRF认证 局部认证组件 我们知道,我们不管路由怎么写的,对应的视图类怎么写的,都会走到dispatch方法,进行分发, 在咱们看的APIView类中的dispatch方法的源码中,有个self.initial(request, *args, **kwargs),那么认证、权限、频率这三个默认 阅读全文
posted @ 2020-10-14 20:49 muguangrui 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 一. 简介 随着我们项目的更新,版本就越来越多,我们不可能新的版本出了, 以前旧的版本就不进行维护了吧。 那我们就需要对版本进行控制, 这个DRF也给我们提供了一些封装好的版本控制方法。 1.源码流程: 执行self.initial方法之前是各种赋值,包括request的重新封装赋值,下面是路由的分 阅读全文
posted @ 2020-10-14 18:07 muguangrui 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 一. 简介 DRF的路由功能可以帮助我们自动生成路由,就不用像这么写路由了,还要传这么多参数: from django.urls import path from xuliehua.views import BookView, BookEditView,BookModelViewSet urlpat 阅读全文
posted @ 2020-10-14 17:21 muguangrui 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 一. 简介 直接上图: 1. 用法 urls: from django.urls import pathfrom xuliehua.views import BookView, BookEditView,BookModelViewSeturlpatterns = [ # path('list/', 阅读全文
posted @ 2020-10-14 17:11 muguangrui 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 一. DRF序列化 我们前后端交互一般都选择JSON数据格式,JSON是一个轻量级的数据交互格式。 那么我们给前端数据的时候都要转成json格式,那就需要对我们从数据库拿到的数据进行序列化。 接下来我们看下django序列化和rest_framework序列化的对比。 1.Django的序列化方法 阅读全文
posted @ 2020-10-14 16:27 muguangrui 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 一. 说明 记录自己在学习python,遇到的问题: 1.Django的自定义过滤器,标签 注意两点:新建的文件夹一定命名为templatetags。最好是包的形式,就是包含__init__文件,不然的话,引用的xxxtags就会有黄色底色。 这样做之后,都不用在settings中注册了。 2. 静 阅读全文
posted @ 2020-10-14 10:36 muguangrui 阅读(97) 评论(0) 推荐(0) 编辑