View:
django.views.generic.base.View是主要的类视图,所有的类视图都是继承自他。如果我们写自己的类视图,也可以继承自他。然后再根据当前请求的method,来实现不同的方法。比如这个视图只能使用get的方式来请求,那么就可以在这个类中定义get(self,request,*args,**kwargs)方法。以此类推,如果只需要实现post方法,那么就只需要在类中实现post(self,request,*args,**kwargs)。示例代码如下:
# 类视图
class BookListView(View):
def get(self,request,*args,**kwargs):
return HttpResponse("book list view")
class AddBookView(View):
# 不同方式请求,不同的方法
def get(self,request):
return render(request,'add_view.html')
def post(self,request,*args,**kwargs):
book_name = request.POST.get("name")
book_author = request.POST.get("author")
print