最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Django中的CBV和FBV示例介紹

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

前言

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

一、  CBV

CBV是采用面向?qū)ο蟮姆椒▽?xiě)視圖文件。

CBV的執(zhí)行流程:

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

使用實(shí)例:

urls.py

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

views.py

from django import views #在views.py的基礎(chǔ)上添加
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

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

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í)行結(jié)果:2222

  GET
  1111

二、    FBV

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

看代碼:

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的使用。

總結(jié)

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

相關(guān)文章

  • Python文件操作與數(shù)據(jù)處理實(shí)戰(zhàn)指南

    Python文件操作與數(shù)據(jù)處理實(shí)戰(zhàn)指南

    文件操作與數(shù)據(jù)處理是Python編程中最基礎(chǔ)也是最重要的技能之一,無(wú)論是數(shù)據(jù)分析、Web開(kāi)發(fā)還是自動(dòng)化腳本編寫(xiě),都離不開(kāi)對(duì)文件的讀寫(xiě)和各種數(shù)據(jù)處理操作,本文將全面介紹Python中的文件操作方法和常用數(shù)據(jù)處理技巧,需要的朋友可以參考下
    2025-04-04
  • Python+OpenCV進(jìn)行人臉面部表情識(shí)別

    Python+OpenCV進(jìn)行人臉面部表情識(shí)別

    這篇文章主要介紹了通過(guò)Python OpenCV實(shí)現(xiàn)對(duì)人臉面部表情識(shí)別,判斷人是否為笑臉,文中的示例代碼非常詳細(xì),需要的朋友可以參考一下
    2021-12-12
  • python和Appium移動(dòng)端多設(shè)備自動(dòng)化測(cè)試框架實(shí)現(xiàn)

    python和Appium移動(dòng)端多設(shè)備自動(dòng)化測(cè)試框架實(shí)現(xiàn)

    這篇文章主要介紹了python和Appium移動(dòng)端多設(shè)備自動(dòng)化測(cè)試框架實(shí)現(xiàn),基于pytest和Appium框架,支持Android和iOS功能自動(dòng)化的測(cè)試框架的相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-04-04
  • python ddt數(shù)據(jù)驅(qū)動(dòng)最簡(jiǎn)實(shí)例代碼

    python ddt數(shù)據(jù)驅(qū)動(dòng)最簡(jiǎn)實(shí)例代碼

    在本篇內(nèi)容里我們給大家分享了關(guān)于python ddt數(shù)據(jù)驅(qū)動(dòng)最簡(jiǎn)實(shí)例代碼以及相關(guān)知識(shí)點(diǎn),需要的朋友們跟著學(xué)習(xí)下。
    2019-02-02
  • 基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面

    基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面

    前端時(shí)間推出了一個(gè)摸魚(yú)APP,這篇文章將為大家介紹基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面,文中的示例代碼講解詳細(xì),感興趣的可以學(xué)習(xí)一下
    2021-12-12
  • python基于雙向鏈表實(shí)現(xiàn)LFU算法

    python基于雙向鏈表實(shí)現(xiàn)LFU算法

    這篇文章主要為大家詳細(xì)介紹了python基于雙向鏈表實(shí)現(xiàn)LFU算法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • exe反編譯為.py文件的方法

    exe反編譯為.py文件的方法

    本文主要介紹了exe反編譯為.py文件的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 4種Python基于字段的不使用元類(lèi)的ORM實(shí)現(xiàn)方法總結(jié)

    4種Python基于字段的不使用元類(lèi)的ORM實(shí)現(xiàn)方法總結(jié)

    在 Python 中,ORM(Object-Relational Mapping)是一種將對(duì)象和數(shù)據(jù)庫(kù)之間的映射關(guān)系進(jìn)行轉(zhuǎn)換的技術(shù),本文為大家整理了4種不使用元類(lèi)的簡(jiǎn)單ORM實(shí)現(xiàn)方式,需要的可以參考下
    2023-12-12
  • Python數(shù)據(jù)分析matplotlib折線圖案例處理

    Python數(shù)據(jù)分析matplotlib折線圖案例處理

    這篇文章主要介紹了Python數(shù)據(jù)分析matplotlib折線圖案例處理,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-08-08
  • 用Python+OpenCV對(duì)比圖像質(zhì)量的幾種方法

    用Python+OpenCV對(duì)比圖像質(zhì)量的幾種方法

    這篇文章主要介紹了用Python+OpenCV對(duì)比圖像質(zhì)量過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07

最新評(píng)論

灵石县| 岗巴县| 庆阳市| 张家港市| 彩票| 宝应县| 平塘县| 晋州市| 浑源县| 阜宁县| 商水县| 尖扎县| 宁城县| 夏河县| 金昌市| 奎屯市| 克拉玛依市| 若尔盖县| 易门县| 唐山市| 华坪县| 自治县| 凭祥市| 长宁县| 兴文县| 凤城市| 景洪市| 宝山区| 闻喜县| 昂仁县| 罗甸县| 江津市| 临江市| 常德市| 涞水县| 洛宁县| 双柏县| 运城市| 宁海县| 乌鲁木齐市| 邛崃市|