01 2024 档案
摘要:#1 协同开发,版本管理#2 svn(集中式管理),git(分布式管理) #3 git装完,既有客户端,又有服务的#4 git工作流程 -工作区,暂存区,版本库 #5 远程仓库:github,码云,公司内部(gitlab) # 6 安装:一路下一步# 7 右键--git bash here # 8
阅读全文
摘要:1 借助于第三方:coreapi,swagger 2 在路由中 from rest_framework.documentation import include_docs_urls path('docs/', include_docs_urls(title='图书管理系统api')) 3 在配置文件
阅读全文
摘要:全局异常 1 统一接口的返回方式,即便视图函数执行出错 2 使用方式 -写一个函数 def common_exception_handler(exc, context): response = exception_handler(exc, context) if response is None:
阅读全文
摘要:自定制过滤器 基于django-filter扩写 1 写一个类MyFilter,继承BaseFilterBackend 2 重写filter_queryset方法,在该方法内部进行过滤(自己设置的过滤条件) 3 返回queryset对象(过滤后的queryset对象) 4 配置在视图类中 filte
阅读全文
摘要:1 内置了三种分页器 -PageNumberPagination:普通分页 -LimitOffsetPagination:偏移分页 -CursorPagination:游标分页 2 APIView和GenericAPIView+ListModelMixin 3 GenericAPIView+List
阅读全文
摘要:1 过滤:筛选查询结果 2 内置筛选的使用 -在视图类中配置 filter_backends =[SearchFilter,] search_fields=('name',) # 表模型中的字段 -查询的时候 http://127.0.0.1:8000/students/?search=e 3 第三
阅读全文
摘要:1 模型表:Student表,写接口应该选择继承哪个视图类2 推荐使用自动生成路由的方式(继承ViewSetMixin及它的字类)3 但是目前来说,你先实现功能即可(至于选择哪个,慢慢体会) 4 choice的使用 -在模型类中使用 sex = models.SmallIntegerField(ch
阅读全文
摘要:自定义频率类 1 限制某个人,某个ip的访问频次 2 自定义频率类及使用 from rest_framework.throttling import BaseThrottle class MyThrottle(BaseThrottle): VISIT_RECORD = {} # 存用户访问信息的大字
阅读全文
摘要:import os if __name__ == '__main__': os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'dd85.settings') #这句直接去wsgi.py中拷贝过来即可 import django django.setup(
阅读全文
摘要:自定义认证类 (登录) 1 使用 from app03 import modelsfrom rest_framework.exceptions import AuthenticationFailed,PermissionDenied,Throttled#AuthenticationFailed登录认
阅读全文
摘要:视图集: #视图集 # ViewSetMixin:重写了as_view # ViewSet: 继承ViewSetMixin和APIView# GenericViewSet:继承ViewSetMixin, generics.GenericAPIView # ModelViewSet:继承mixins.
阅读全文
摘要:2个视图基类: # Django REST framwork 提供的视图的主要作用: 控制序列化器的执行(检验、保存、转换数据) 控制数据库查询的执行# APIView:继承了原生Django的View# GenericAPIView:继承了APIView -queryset = models.Bo
阅读全文
摘要:1 many=True -__init__ >一路找到了BaseSerializer 》__new__决定了生成的对象是谁 2 入口是is_valid() 》BaseSerializer--》is_valid 》self._validated_data = self.run_validation(s
阅读全文
摘要:# Request -data :前端以post请求提交的数据都在它中 -FILES :前端提交的文件 -query_params:就是原来的request.GET -重写了 __getattr__ -使用新的request.method其实取得就是原生request.method(通过反射实现)
阅读全文
摘要:1 原来用的Serilizer跟表模型没有直接联系, 模型类序列化器ModelSerilizer,跟表模型有对应关系 2 使用 class BookModelSerializer(serializers.ModelSerializer): class Meta: model=表模型 # 跟哪个表模型
阅读全文
摘要:高级用法之source 1 修改返回到前端的字段名 # source=title 字段名就不能再叫title name = serializers.CharField(max_length=32,min_length=2,source='title')2 如果表模型中有方法 # 执行表模型中的tes
阅读全文
摘要:views.py from django.shortcuts import renderfrom django.http import HttpResponse# Create your views here.from rest_framework.views import APIViewfrom
阅读全文
摘要:作用: 1. 序列化,序列化器会把模型对象转换成字典,经过response以后变成json字符串 -Book--序列化器 >字典--同过drf:Response--》json格式字符串 >传给前端 2. 反序列化,把客户端发送过来的数据,经过request以后变成字典,序列化器可以把字典转成模型 j
阅读全文
摘要:1 Representational State Transfer:表征性状态转移2 Web API接口的设计风格,尤其适用于前后端分离的应用模式中3 与语言,平台无关,任何框架都可以写出符合restful规范的api接口4 规范:10条 -1 数据的安全保障:url链接一般都采用https协议进行
阅读全文