• 2024-05-22【DRF-03】rest-framework之APIView
    安装djangorestframeworkpipinstalldjangorestframework基本流程:url--》视图类--》执行dispatch方法fromrest_framework.viewsimportAPIViewfromrest_framework.responseimportResponseclassTestView(APIView):defdispatch(self,request,*args,*
  • 2024-05-1502快速上手drf、CBV源码分析、APIVIEW源码分析
    快速上手drf、CBV源码分析、APiview源码分析一、快速上手drf【1】安装drfpipinstalldjangorestframework注意:安装时不指定版本,默认下载最新版本每个版本有对应的解释器版本和django限制要求,下载时官网查看一下如果django版本是3以下,drf最新跟django3以下版本不兼容版
  • 2024-04-23DRF之请求执行流程和APIView源码分析
    DRF之请求执行流程和APIView源码分析【一】路由入口fromdjango.contribimportadminfromdjango.urlsimportpathfrombookimportviewsurlpatterns=[path('admin/',admin.site.urls),#原来的路由写法#path('test_http/',views.TestHttpResponse),
  • 2024-04-22DRF之View和APIView
    【零】DRF在Django项目中的使用【1】导入#DRF需要使用pipinstall安装pipinstalldjangorestframeworkDRF(DjangoRestFramework)是一个用于构建WebAPI的工具包,它是基于Django框架的一个第三方应用(app)在Django项目中,一个应用(app)通常是一个具有特定功能的模块,它包
  • 2024-04-22DRF之View和APIView
    【零】DRF在Django项目中的使用【1】导入```shell#DRF需要使用pipinstall安装pipinstalldjangorestframework```DRF(DjangoRestFramework)是一个用于构建WebAPI的工具包,它是基于Django框架的一个第三方应用(app)在Django项目中,一个应用(app)通常是一个具有特定功
  • 2024-04-21视图组件
    两个视图基类APIView#APIView是rest-framwork提供的所有视图类的基类,它继承自django的View类#在APIView中仍然以常规的类视图定义方法来实现get()、post()...请求方式的方法APIView和View的区别传入到视图方法中的请求对象是rest-framwork的Reqeust类的对象,而不是djang
  • 2024-04-21APIView类
    【一】APIView类的介绍【1】介绍​ DjangoRESTFramework(DRF)中的APIView类是一个非常重要的基类,用于定义基于类的视图(Class-basedViews)来处理RESTfulAPI请求。它提供了强大的功能和灵活的扩展点,使得编写API视图变得更加简单和灵活。【2】主要特点和用法处理HTTP请
  • 2024-04-17drf序列化用APIView写编写5个接口并校验数据
    步骤:写一个类,继承Serialier在类中写字段,字段就是要序列化的字段在视图函数中,序列化类,实例化得到对象,传入该传的参数调用序列化类对象的serializer.data方法完成序列化【一】写序列化类serializer.pyfromrest_frameworkimportserializersfromrest_framework.e
  • 2024-04-142、APIView执行流程以及request对象源码分析
    一、基于View编写5个接口1、创建模型表models.pyfromdjango.dbimportmodelsclassBook(models.Model):name=models.CharField(max_length=64)price=models.IntegerField()publish=models.CharField(max_length=32)2、视图函数views.pyfrom
  • 2024-04-1102-APIView和序列化
    常规通过CBV的写法#models.pyfromdjango.dbimportmodelsclassBook(models.Model):name=models.CharField(max_length=32)price=models.IntegerField()publish=models.CharField(max_length=64)classMeta:db_table="book&qu
  • 2024-03-25drf : APIView执行流程和新的Request源码。APIView和Request对象分析
    DRF基本使用及执行流程分析1.继承APIView使用2.APIView的执行流程路由:path('Book1',view.Book.as_view())-->第二个参数是函数的内存地址-->APIView的as_view的执行结果-->本质还是用了View类的as_viewn内的viewc包函数,去掉了csrf的认证。-->当请求来
  • 2024-02-23APIview源码分析
    1APIview的as_view -内部还是执行了View的闭包函数view-禁用掉了csrf-一切皆对象,函数也是对象函数地址.name=lqz2原生View类中过的as_view中的闭包函数view -本质执行了self.dispatch(request,*args,**kwargs),执行的是APIView的dispatch3APIView的dispatchdef
  • 2023-12-20drf之APIView分析与Request分析
    一、APIView执行流程分析1.1基于APIView+JsonResponse编写接口#原来基于django原生的View编写接口#drf提供给咱们的一个类,以后使用drf写视图类,都是继承这个类及其子类,APIView本身就是继承了Django原生的ViewclassBookView(APIView):defget(self,request):
  • 2023-12-20APIView源码分析
    1.和CBV源码执行流程相似,请求来了先走路由层:path('books/',views.BookView.as_view()) 2.走APIView的as_view方法,代码如下:@classmethoddefas_view(cls,**initkwargs):view=super().as_view(**initkwargs)#调用父类的as_view,view还是View的as_view
  • 2023-08-31CBV、APIView源码分析
    一、CBV源码分析1、功能需求基于类的视图--->使用类编写--->在类中写跟请求方式(methon)同名的方法--->路由配置类名.as_view()前端的请求过来,什么请求,就会执行跟请求方式同名的方法2、执行流程路由匹配成功--->配置在路由上的第二个参:执行函数内存地址自动加(request
  • 2023-07-31DRF之APIView全笔记
    一.APIView基本视图,所有的都用这个来作viewsetmixin主要管as_view{}里的调配让视图不再需要两个类二.通用视图GenericAPIView(rest_framework.viewsets)GenericAPIView一共五个功能,数据库获取、分页、序列化、getobject\还有frilter_queryset__东西挺多的主要管self.get_object
  • 2023-05-26drf——基于apiview写过滤、排序和分页
    基于APIView带过滤和排序fromrest_framework.viewsimportAPIViewfrom.modelsimportBookfrom.serializerimportBookSerializerfromrest_framework.responseimportResponseclassBookView(APIView):#/books/?ordering=-price&name=红楼梦defget(self,
  • 2023-05-22两个视图基类GenericAPIView,APIView
    基于两个视图基类GenericAPIView,APIViewclassBookserializers(serializers.ModelSerializer):#name=serializers.CharField()#price=serializers.CharField()#publish_id=serializers.CharField(write_only=True)#Authors=serializers.ListFie
  • 2023-05-20drf之APIView+序列化类+Response
    昨日回顾#0ser=BookSerialzier(instance=qs,many=True)---->ListSerializer[序列化对象,序列化对象]ser=BookSerialzier(instance=book)---->BookSerialzier#1定制序列化的字段之source,字段参数 -指定一个要序列化的对象中得字段-指定一个要序列化的对象中得方法,方
  • 2023-05-16Restful规范,drf安装和介绍和使用,APIView源码分析
    1Restful规范#RESTful是一种定义API接口的设计风格,AIP接口的编写规范,,尤其适用于前后端分离的应用模式中这种风格的理念认为后端开发任务就是提供数据的,对外提供的是数据资源的访问接口,所以在定义接口时,客户端访问的URL路径就表示这种要操作的数据资源我们可以使用任何一个
  • 2023-05-11APIView执行流程(源码分析)、Request对象源码分析
    目录一、APIView执行流程——源码分析(难,了解)1.1基于APIView+JsonResponse编写接口1.2基于APIView+Response写接口1.3APIView的执行流程二、Request对象源码分析(难,了解)一、APIView执行流程——源码分析(难,了解)1.1基于APIView+JsonResponse编写接口#原来基于django原生的Vi
  • 2023-03-16DRF之APIView全笔记
    一.APIView基本视图,所有的都用这个来作viewsetmixin主要管as_view{}里的调配让视图不再需要两个类二.通用视图GenericAPIView(rest_framework.viewsets)主要管self.get_ob
  • 2023-03-15CSRF Failed: CSRF token missing or incorrect
    背景: post请求一个接口: 后端视图中继承的是APIView,其登陆认证 authentication_classes=[xxx]是注释的,然后浏览器开发者模式中Network中Preview中报错如题.解
  • 2023-02-13断点调试/认证/权限/频率-源码分析/基于APIView编写分页/异常处理
    内容概要断点调试认证/权限/频率-源码分析基于APIView编写分页异常处理断点调试#程序以debug模式运行,可以在任意位置停下,查看当前情况下变量数据的变化情况#p
  • 2023-02-09drf 断点调试,认证权限频率源码分析,基于APIView编写分页,异常处理
    昨日回顾#1认证的使用-有些接口需要登陆后才能访问-原生django如何使用的认证:auth的user表,auth自带了认证-自己登录,使用自定义的用户表-认证