django 的cbv和fbv

Posted yanhonghong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了django 的cbv和fbv相关的知识,希望对你有一定的参考价值。

今天给大家介绍一下,django中的cbv和fbv:

cbv:class base views,基于类的视图

fbv:function base views ,基于函数的的视图

在django中,view负责请求的逻辑处理,处理方法,可以是函数,也可以是类。

1.通过函数处理:

以注册为例:

路由:path(‘reg/‘,reg) #该路由对应视图函数reg

视图函数:

def reg(request):

  if request.method == "GET":

    逻辑一

  elif request.method == "POST":

    逻辑二

视图函数通过 对request.method 进行判断 来处理各种请求

2.通过类来处理:

路由:

path(‘reg/‘,RegView.as_view())

这里路由对应,视图类中的as_view()方法

视图类:

class RegView(View): #该视图类继承  from django.views import View

  def get(self,request):

    逻辑一

  def post(self,request):

    逻辑二

以上就是django处理请求的两种方式

 

以上是关于django 的cbv和fbv的主要内容,如果未能解决你的问题,请参考以下文章

django 的cbv和fbv

python(十九):django之FBV和CBV

191112Django fbv和cbv

Django的CBV和FBV

Django中CBV和Restful API中的APIView源码分析

django-django请求生命周期之FBV和CBV