欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django中的CBV和FBV示例介紹

 更新時間:2018年02月25日 15:36:27   作者:xsan  
這篇文章主要給大家介紹了關于Django中CBV和FBV的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。

前言

本文主要給大家介紹了關于Django中CBV和FBV的相關內(nèi)容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

一、  CBV

CBV是采用面向對象的方法寫視圖文件。

CBV的執(zhí)行流程:

瀏覽器向服務器端發(fā)送請求,服務器端的urls.py根據(jù)請求匹配url,找到要執(zhí)行的視圖類,執(zhí)行dispatch方法區(qū)分出是POST請求還是GET請求,執(zhí)行views.py對應類中的POST方法或GET方法。

使用實例:

urls.py

path('login/',views.Login.as_view())

views.py

from django import views #在views.py的基礎上添加
class Login(views.Views):
 def get(self,request)
  pass
  def pass(self,request)
  pass

使用裝飾器:

from django import views
from django.utils.decorators import method_decorator
def outer(func):
 def inner(request,*args,**kwargs):
 return func(request,*args,**kwargs)
 return inner
class Login(views.View):
 @method_decorator(outer)
 def get(self,request,*args,**kwargs):
 pass

在類上面加裝飾器,和在函數(shù)上加裝飾器是一個性質。但加的方法有所不同。

eg:

@method_decorator(outer,name='dispatch')
class Login(views.View):

自定義dispatch:

class Login(views.View):
 def dispatch(self, request, *args, **kwargs):
 print(2222)
 ret = super(Login, self).dispatch(request, *args, **kwargs)
 print(1111)
 return ret
def get(self, request, *args, **kwargs):
  print('GET')
  return HttpResponse('OK')

執(zhí)行結果:2222

  GET
  1111

二、    FBV

FBV即在views.py中以函數(shù)的形式寫視圖。

看代碼:

urls.py

from django.conf.urls import url, include
# from django.contrib import admin
from mytest import views
 
urlpatterns = [
 # url(r‘^admin/‘, admin.site.urls),
 url(r‘^index/‘, views.index),
]

views.py

from django.shortcuts import render
def index(req):
 if req.method == ‘POST‘:
 print(‘method is :‘ + req.method)
 elif req.method == ‘GET‘:
 print(‘method is :‘ + req.method)
 return render(req, ‘index.html‘)

注意此處定義的是函數(shù)【def index(req):】

index.html

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>index</title>
</head>
<body>
 <form action="" method="post">
 <input type="text" name="A" />
 <input type="submit" name="b" value="提交" />
 </form>
</body>
</html>

上面就是FBV的使用。

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • Pyqt5 關于流式布局和滾動條的綜合使用示例代碼

    Pyqt5 關于流式布局和滾動條的綜合使用示例代碼

    這篇文章主要介紹了Pyqt5 關于流式布局和滾動條的綜合使用示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • 詳解非極大值抑制算法之Python實現(xiàn)

    詳解非極大值抑制算法之Python實現(xiàn)

    非極大值抑制(Non-Maximum Suppression,NMS),顧名思義就是抑制不是極大值的元素,可以理解為局部最大搜索。這個局部代表的是一個鄰域,鄰域有兩個參數(shù)可變,一是鄰域的維數(shù),二是鄰域的大小
    2021-06-06
  • Django中使用Celery執(zhí)行定時任務問題

    Django中使用Celery執(zhí)行定時任務問題

    這篇文章主要介紹了Django中使用Celery執(zhí)行定時任務問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • python使用代理ip訪問網(wǎng)站的實例

    python使用代理ip訪問網(wǎng)站的實例

    今天小編就為大家分享一篇python使用代理ip訪問網(wǎng)站的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • python實現(xiàn)抽獎小程序

    python實現(xiàn)抽獎小程序

    這篇文章主要為大家詳細介紹了python實現(xiàn)抽獎小程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-05-05
  • python中matplotlib實現(xiàn)最小二乘法擬合的過程詳解

    python中matplotlib實現(xiàn)最小二乘法擬合的過程詳解

    這篇文章主要給大家介紹了關于python中matplotlib實現(xiàn)最小二乘法擬合的相關資料,文中通過示例代碼詳細介紹了關于最小二乘法擬合直線和最小二乘法擬合曲線的實現(xiàn)過程,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • 使用python批量修改XML文件中圖像的depth值

    使用python批量修改XML文件中圖像的depth值

    這篇文章主要介紹了使用python批量修改XML文件中圖像的depth值,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-07-07
  • python數(shù)據(jù)批量寫入ScrolledText的優(yōu)化方法

    python數(shù)據(jù)批量寫入ScrolledText的優(yōu)化方法

    今天小編就為大家分享一篇python數(shù)據(jù)批量寫入ScrolledText的優(yōu)化方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 通過gradio和攝像頭獲取照片和視頻實現(xiàn)過程

    通過gradio和攝像頭獲取照片和視頻實現(xiàn)過程

    這篇文章主要為大家介紹了gradio和攝像頭獲取照片和視頻實現(xiàn)過程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-04-04
  • python實現(xiàn)漢諾塔方法匯總

    python實現(xiàn)漢諾塔方法匯總

    本文給大家匯總了幾種使用Python結合遞歸算法實現(xiàn)漢諾塔的方法,非常的簡單實用,對大家學習Python很有幫助,希望大家能夠喜歡
    2016-07-07

最新評論