类视图
django除了使用函数作为视图之外, 还可以使用类作为视图,使用类视图可以使用类的一些特性, 比如继承,多态等
- 导入方式
from django.views.generic import View
说明:
django.views.generic.base.View是主要的类视图, 所有的类视图都继承自他, 我们自己写的类视图,也可以继承自他, 然后再根据请求method,来实现不同的方法
- 视图类的基本使用
编写一个class类继承View类
from django.views.generic import View
class BookListView(View):
def get(self, request):
return render(request, 'index2.html')
view支持方法['get', post, put, patch, delete, head, option, trace]
-
类视图第一个触发的方法,
dispatch
-
类视图的 http_method_not_allowed方法
-如果请求方式, 类视图没定义就会执行http_method_not_allowed方法