Python-django-CBV模式视图
1.
1. 当客户端请求过来之后,会通过 dispatch 方法通过反射自动匹配到 get/post方法
2. 当执行完get/post请求返回内容前,或经过 dispatch方法后再返回内容
from django.views import View class MyCBV(View): """ 请求发过来,执行 dispatch,然后通过反射找到对应的 get/post方法 """ """ post,get 方法执行完后返回的结果到达 dispatch 后再返回给用户""" def dispatch(self, request, *args, **kwargs): """重写 dispatch方法, 在 post/get请求前或返回结果前可以做一些自己的动作""" print('请求之前做一些事请......') res=super(MyCBV,self).dispatch(request, *args, **kwargs) print('请求结束之后做一些事请......') return res """ 当发送get请求执行此方法 """ def get(self, request): print('get') return HttpResponse('CBV.get') """当发送post请求执行此方法""" def post(self, request): return HttpResponse('CBV.post')
2.
path('cbv.html', MyCBV.as_view(), name='cbvAction'),