亲宝软件园·资讯

展开

DRF APIView源码 Django DRF APIView源码运行流程详解

Wanlei 人气:0
想了解Django DRF APIView源码运行流程详解的相关内容吗,Wanlei在本文为您仔细讲解DRF APIView源码的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Django,DRF,APIView源码,下面大家一起来学习吧。

首先写一个简单的drf接口

from rest_framework.views import APIView
from rest_framework.response import Response

# 基于drf写接口,cbv
class DrfTest(APIView):
  def get(self, request,*args,**kwargs):
    print(type(request._request))
    print(type(request))
    print(request.POST)
    print(request.GET)
    response = {'status':100,'errors':None}
    response['users'] = user_list
    return Response(response)

  def post(self,request,*args,**kwargs):
    name = request.data.get('name')
    print(name)
    return HttpResponse('ok')
url(r'DrfTest/',views.DrfTest.as_view()),

通过路由配置 点入查看源码,首先进入到APIView的as_view的方法中:

查找dispatch方法:


如果自己所定义的class DrfTest(APIView)没有手撸dispatch的情况下,下一步,找到APIView里的dispatch方法:

当中有一个self.initial(request, *args, **kwargs)方法:


至此,简单分析如上:回到最开始定义类的过程:

流程总结

dispatch方法:

加载全部内容

相关教程
猜你喜欢
用户评论