DRF学习笔记
文章平均质量分 64
记录DRF学习的过程
「已注销」
这个作者很懒,什么都没留下…
展开
-
Django REST Framework笔记(八)深入学习认证(token认证)
简单理解认证将请求对象request和组织好的标识比较,请求和标识一致,认证通过继而进行其他操作,认证失败则被拒绝其他操作。REST framework自带的认证方式在前面的学习中所接触到的认证都是基于django自带session的认证体系的,所以在上一章中,认证的过程是无感的:账号密码正确认证通过,反之不通过。不过在前后端的开发是基于token认证的,DRF自带一套token认证方案,也有其他形式的认证方案,当然也可以自定义,接下来逐一学习。Session认证SessionAuthenti原创 2021-08-24 01:20:23 · 300 阅读 · 0 评论 -
Django REST Framework笔记(七)认证与权限
到目前为止,DRF学习到了一定的程度,可以写很基础的接口了。不过,离实际应用还差了很远。目前接口的情况:任何人都可以发起请求,实际应用时是不允许的。所以现在要学习认证与权限。简单来说:认证 : 使用账号密码登陆,身份校验无误权限: 各种身份所匹配的操作,如匿名用户可创建用户、登陆的用户只能修改自己的信息、admin用户可以删除用户等等认证Authentication知识点认证通过后,django和drf都会将用户和request绑定,即可以通过request获得当前登陆的用户信息将前原创 2021-08-22 01:57:40 · 308 阅读 · 0 评论 -
Django REST Framework笔记(六)重写序列化器的update和create方法
序列化器中update、create和视图中的update、create在序列化器中和视图中,都可以重写update和create方法,但两者有什么区别呢?说实话,我还未搞懂,看不懂源码。这里我可以拿笔记中的案例来分析分析。本笔记中有以下modelsfrom django.db import modelsclass Company(models.Model): company_name = models.CharField(max_length=50) def __str__(原创 2021-08-22 01:14:42 · 3147 阅读 · 0 评论 -
Django REST Framework笔记(五)反序列化数据的验证方法
昨天学习到数据序列化时的可读性,如果不做一些改造,数据传输到前端并不具备可读性,且不利于反序列化时保存数据。今天,要学习数据在反序列化时是如何验证的,有哪些验证方法。数据验证 (Validation)Serializer类内置了一个errors的属性,这是一个字典类型的对象,反序列化验证数据或保存数据时会调用is_valid()方法,失败时会调用errors。字段级别验证.validate_{field_name}...原创 2021-08-17 00:42:51 · 344 阅读 · 3 评论 -
Django REST Framework笔记(四)序列化数据的可读性改造
说回来,DRF,无非就两方面:序列化器视图FBV 或 CBV两者分别担任不同的职责:序列化器负责数据的序列化、反序列化、验证、权限及限流视图负责请求逻辑的处理前面已学习了基础的序列化器和各种情况下的视图处理,接下来便进一步学习序列化器。修改序列化器,控制响应数据的输出格式反序列化数据时的验证重写序列化器自带的create和update方法为了方便学习,需要稍微调整一下model字段。#models.pyfrom django.db import modelsclas原创 2021-08-15 21:29:26 · 238 阅读 · 0 评论 -
Django REST Framework笔记(三)基于CBV的视图
CBV视图的好处提高代码的复用性和可维护性精简代码DRF自带的几种CBV基础类APIViewMixins和GenericAPI类混搭通用视图类generics的类,如generics.ListCreateAPIView视图集ViewSet和ModelViewSet以上模式各有各的好,有各自适合的情景,下面一一学习。APIView特点继承于django的view类支持多种请求方法,GET POST PUT PATCH DELETE封装了django的request,通过re原创 2021-08-15 20:11:53 · 123 阅读 · 0 评论 -
Django REST Framework笔记 (二) 自定义序列化器介绍及基于FBV的视图处理方法
API的简单描述# 接口描述 用户列表# 接口地址 http://127.0.0.1:8000/api/user# 请求方式 POST GET # 返回参数 JSON格式的用户列表及状态码# 接口描述 用户详情# 接口地址 http://127.0.0.1:8000/api/user/{id}# 请求方式 GET, PUT, DELETE# 返回参数 用户详情及状态码(GET, PUT) 状态码(DELETE)自定义序列化器前面一章《(一)django Rest Framework简原创 2021-08-12 23:06:32 · 265 阅读 · 0 评论 -
Django REST Framework笔记 (一) Rest Framework简单理解&练习创建项目
创建项目test20210811项目在虚拟环境ven中运行,并创建一个名为user的app配置setting文件配置setting文件,添加user和rest_framework。INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.原创 2021-08-11 22:37:03 · 192 阅读 · 0 评论