Django 的CBV和FBV
一、view有CBV和FBV。
FBV function based view 就是在视图里使用函数处理请求
CBV class based view 就是在视图里使用类处理请求
二、现在使用类处理请求,CBV的流程
原来FBV
1、定义CBV,先定义基础框架,再进行修改
2、修改原有的路径url.py
使用 path(‘add_press/’, views.AddPress.as_view()), #添加出版社
三、流程
1、 views.AddPress.as_view() --》 view函数
2、当请求到来的时候执行view函数:
1、实例化自己写的类 --》self
self = cls(**initkwargs)
2、self.setup(request, *args, **kwargs)
3、执行 self.dispatch(request, *args, **kwargs)
4、执行父类中的dispathch方法
判断请求方式是否被执行,允许情况通过反射获取get、post方法,之后返回HttpResponse对象
3、返回HttpResponse对象 给Django