CBV的请求流程view的执行步骤

1,找到类方法里面的view,我们点进去

class StudentsView(View):
    result = {
        'code': 1001,
        'method': None
    }
    def get(self,request,*args,**kwargs):
        self.result['method'] = 'GET'
        return HttpResponse(json.dumps(self.result,ensure_ascii=False),status=200)
    def post(self,request,*args,**kwargs):
        self.result['method'] = 'POST'
        return HttpResponse(json.dumps(self.result,ensure_ascii=False),status=200)
    def delete(self,request,*args,**kwargs):
        self.result['method'] = 'DELETE'
        return HttpResponse(json.dumps(self.result,ensure_ascii=False),status=200)
    def put(self,request,*args,**kwargs):
        self.result['method'] = 'PUT'
        return HttpResponse(json.dumps(self.result,ensure_ascii=False),status=200)

一,执行as_view方法

二,根据return 这个值,找到view方法,然后调用这个值,找到dispatch方法

self = cls(**initkwargs) 这个self 是指当前这个类方法,是图一 class StudentsView(View):


在view中找到请求方法,找到后执行方法

然后找到这个相应方法,得到返回值 其实那个handler就是get方法


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。