上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页
摘要: 要求 1 自定义User表扩展auth的User,新增mobile唯一约束字段;新增icon图片字段 2 在自定义User表基础上,用 GenericViewSet + CreateModelMixin + serializer 完成User表新增接口(就是注册接口) (重要提示:序列化类要重写cr 阅读全文
posted @ 2020-11-12 21:04 1024bits 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 要求: 编写登录接口,一个接口既可以不登录访问,又可以登录访问(匿名用户一分钟访问1次,登录用户一分钟访问3次) #需要用到student和user表 1.models.py from django.db import models class Student(models.Model): name 阅读全文
posted @ 2020-11-12 15:43 1024bits 阅读(846) 评论(0) 推荐(1) 编辑
摘要: 自动生成接口文档 1 借助于第三方:coreapi,swagger #先安装好这两个模块 2 在路由中(此处省略了自动生成的students路由) from rest_framework.documentation import include_docs_urls urlpatterns = [ p 阅读全文
posted @ 2020-11-12 15:39 1024bits 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 1.工具类中写utils.py # 使用自己封装的response from rest_framework.response import Response class APIResponse(Response): def __init__(self, code=100, msg='成功', dat 阅读全文
posted @ 2020-11-12 15:31 1024bits 阅读(206) 评论(0) 推荐(0) 编辑
摘要: 一、全局异常捕获 1 统一接口的返回方式,即便视图函数执行出错,也能捕获异常 2 使用方式 -写一个函数 from rest_framework import status from rest_framework.views import exception_handler from rest_fr 阅读全文
posted @ 2020-11-12 14:37 1024bits 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 一、分页器总结 1 内置了三种分页器 -PageNumberPagination:普通分页 -LimitOffsetPagination:偏移分页 -CursorPagination:游标分页 2 APIView和GenericAPIView+ListModelMixin 3 GenericAPIV 阅读全文
posted @ 2020-11-11 16:06 1024bits 阅读(57) 评论(0) 推荐(0) 编辑
摘要: 一、内置和第三方django-filter过滤功能 1 过滤:筛选查询结果 2 内置筛选的使用 -在视图类中配置 filter_backends =[SearchFilter,] search_fields=('name','age') # 表模型中的字段,表示查询name或age字段里面有需要查的 阅读全文
posted @ 2020-11-11 15:42 1024bits 阅读(525) 评论(0) 推荐(0) 编辑
摘要: 一、自定义频率类 1 频率:限制某个人,某个ip的访问频次 2 自定义频率类及使用 from rest_framework.throttling import BaseThrottle class MyThrottle(BaseThrottle): VISIT_RECORD = {} # 存用户访问 阅读全文
posted @ 2020-11-11 15:36 1024bits 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 1.models.py-->执行数据迁移命令 ps:模型层中可以加其他的,只要不是Field的字类,都不会当作字段去处理 from django.db import models class Student(models.Model): name = models.CharField(max_len 阅读全文
posted @ 2020-11-11 15:15 1024bits 阅读(344) 评论(0) 推荐(0) 编辑
摘要: choice 1 模型表:Student表,写接口应该选择继承哪个视图类 2 推荐使用自动生成路由的方式(继承ViewSetMixin及它的子类) 3 但是目前来说,先实现功能即可(至于选择哪个,慢慢体会) 4 choice的使用 -在模型类中使用 sex = models.SmallInteger 阅读全文
posted @ 2020-11-11 15:13 1024bits 阅读(1028) 评论(0) 推荐(0) 编辑
摘要: #注意: 认证-->权限-->频率 第一步认证没通过的话就不会到权限,权限没通过就不会到频率 一、自定义认证类 1 使用 -定义一个类,继承BaseAuthentication class LoginAuth(BaseAuthentication): def authenticate(self, r 阅读全文
posted @ 2020-11-10 21:36 1024bits 阅读(546) 评论(0) 推荐(0) 编辑
摘要: 一、drf认证功能源码分析 1 APIView 》dispatch 》self.initial(request, *args, **kwargs)--》self.perform_authentication(request) 》Request.user >self._authenticate(sel 阅读全文
posted @ 2020-11-10 21:29 1024bits 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 一、2个视图基类 1.储备知识 # Django REST framwork 提供的视图的主要作用: 控制序列化器的执行(检验、保存、转换数据) 控制数据库查询的执行 # APIView:继承了原生Django的View # GenericAPIView:继承了APIView -queryset = 阅读全文
posted @ 2020-11-05 15:12 1024bits 阅读(63) 评论(0) 推荐(0) 编辑
摘要: 一、Request #常用属性 -data :前端以post请求提交的数据都在它中 -FILES :前端提交的文件 -query_params:就是原来的request.GET -重写了 __getattr__ -使用新的request.method其实取得就是原生request.method(通过 阅读全文
posted @ 2020-11-05 15:09 1024bits 阅读(250) 评论(0) 推荐(0) 编辑
摘要: 一、什么是幂等性 幂等性是系统服务对外一种承诺,承诺只要调用接口成功,外部多次调用对系统的影响是一致的。声明为幂等的服务会认为外部调用失败是常态,并且失败之后必然会有重试。 post请求不是接口幂等性 put操作是接口幂等性 二、什么情况下需要幂等 以SQL为例: SELECT col1 FROM 阅读全文
posted @ 2020-11-05 15:02 1024bits 阅读(274) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 18 下一页