主页 > 知识库 > 详解Django中的FBV和CBV对比分析

详解Django中的FBV和CBV对比分析

热门标签:阿里电话机器人对话 举办过冬奥会的城市地图标注 辽宁智能外呼系统需要多少钱 400电话申请资格 地图地图标注有叹号 正安县地图标注app 电销机器人系统厂家郑州 qt百度地图标注 螳螂科技外呼系统怎么用

在学习Django过程中在views.py进行逻辑处理时接触到了两种视图的书写风格,FBV和CBV

FBV 指 function based views,即基于函数的视图

CBV 指 class based views,即基于类的视图

基于类的视图相较于基于函数的视图可以更加便利的实现类的继承封装等。在日常使用的时候,二者的区别主要在于对于request的请求方法的处理方式

FBV

我们通过函数传入的request的method来判断客户端发起的是什么请求,并进行相应的操作,返回相应的数据。

def fbv(request):
  if request.method == 'GET':
    return HttpResponse("GET")
  elif request.method == 'POST':
    return HttpResponse("POST")
  else:
    return HttpResponse("OTHER")

在urls.py中,我们使用下面的格式来书写路径

path('test/', views.fbv),

CBV

我们在类中定义相应请求的方法,并在方法中实现相应的逻辑处理并返回相应的数据,这种基于类的视图很适用于restful风格的书写。

class CBV(View):
  @csrf_exempt
  def get(self):
    return HttpResponse("GET")

  @csrf_exempt
  def post(self):
    return HttpResponse("POST")

  @csrf_exempt
  def put(self):
    return HttpResponse("PUT")

在urls.py中,我们使用下面的格式来书写路径

path('test/', views.cbv.as_view()),

到此这篇关于 详解Django中的FBV和CBV对比分析的文章就介绍到这了,更多相关Django FBV和CBV对比 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
  • Django中的FBV和CBV用法详解
  • Django CBV与FBV原理及实例详解
  • Django中的CBV和FBV示例介绍

标签:淘宝好评回访 合肥 阜新 兴安盟 济源 昭通 信阳 随州

巨人网络通讯声明:本文标题《详解Django中的FBV和CBV对比分析》,本文关键词  详解,Django,中的,FBV,和,CBV,;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 下面列出与本文章《详解Django中的FBV和CBV对比分析》相关的同类信息!
  • 本页收集关于详解Django中的FBV和CBV对比分析的相关信息资讯供网民参考!
  • 推荐文章