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

django ObjectDoesNotExist 和 DoesNotExist的用法

 更新時間:2020年07月09日 14:30:50   作者:空氣中的臭氧  
這篇文章主要介紹了django ObjectDoesNotExist 和 DoesNotExist的用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

舉例吧,這樣更容易看的懂。

例1:

from django.core.exceptions import ObjectDoesNotExist
try:
  pe = Plant.objects.get(id=12873)
except ObjectDoesNotExist:
  print "uuuu"
uuuu
# 我隨意找了一個id=12873的對象來查詢,當(dāng)然,數(shù)據(jù)庫里沒有這個id,可以看到結(jié)果正常的打印出來

例2:

try:
  pe = Plant.objects.get(id=12873)
except Plant.DoesNotExist:
  print "rrr"
rrr
# 結(jié)果也如期打印,那么來看看model的屬性
dir(Plant) 
['DoesNotExist',
 'MultipleObjectsReturned',
 '__class__',
 '__delattr__',
 '__dict__',
 '__doc__',
 ......
# DoesNotExist正在其中

總結(jié):ObjectDoesNotExist 和 DoesNotExist 表達的意思是相同的,只是寫法不同,一個需要導(dǎo)入,一個是model的屬性,如何使用看大家的個人習(xí)慣就好。

補充知識:Django入門:DoesNotExist: User matching query does not exist.

先說說引發(fā)該問題的具體代碼

User.objects.filter(username='sss').get().username

當(dāng)在py腳本中使用以上代碼進行username是否等于“sss”判斷時,如果搜索username的值等于“sss”時,其返回正確的結(jié)果,但如果搜索中不存在“sss”時,會返回如標(biāo)題的錯誤(DoesNotExist: User matching query does not exist.),程序終止運行。終止運行意味著后面的代碼不再被執(zhí)行,故而得不到自己想要的結(jié)果。

由此問題可以延伸到:遇到同類問題可以怎么解決:

可以使用try…except…語句將可能會導(dǎo)致程序終止的語句包涵其中,具體寫法如下:

try:
 User.objects.filter(username=username).get().username
except:
 pass

附:try…except…語句是一個用來異常處理用法,即:當(dāng)所有可能會導(dǎo)致程序異常點都可以使用try…except…引導(dǎo)程序

以上這篇django ObjectDoesNotExist 和 DoesNotExist的用法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python中圖像通道分離與合并實例

    python中圖像通道分離與合并實例

    今天小編就為大家分享一篇python中圖像通道分離與合并實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • python 一些常用的小腳本

    python 一些常用的小腳本

    本文主要介紹了python 一些常用的小腳本,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2007-10-10
  • python框架django基礎(chǔ)指南

    python框架django基礎(chǔ)指南

    本文給大家匯總介紹了下python的MVC框架django的一些基礎(chǔ)知識,非常的簡單實用,希望對大家學(xué)習(xí)django能夠有所幫助。
    2016-09-09
  • Python科學(xué)計算環(huán)境推薦——Anaconda

    Python科學(xué)計算環(huán)境推薦——Anaconda

    最近在用Python做中文自然語言處理。使用的IDE是PyCharm。PyCharm確實是Python開發(fā)之首選,但用于科學(xué)計算方面,還略有欠缺。為此我嘗試過Enthought Canopy,但Canopy感覺把問題搞得復(fù)雜化,管理Python擴展也不太方便。直到今天我發(fā)現(xiàn)了 Anaconda 。
    2014-06-06
  • Python常見數(shù)據(jù)類型轉(zhuǎn)換操作示例

    Python常見數(shù)據(jù)類型轉(zhuǎn)換操作示例

    這篇文章主要介紹了Python常見數(shù)據(jù)類型轉(zhuǎn)換操作,結(jié)合實例形式分析了Python針對列表、集合、元組、字典等數(shù)據(jù)類型轉(zhuǎn)換的相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • Python中random函數(shù)的用法整理大全

    Python中random函數(shù)的用法整理大全

    random庫是使用隨機數(shù)的Python標(biāo)準(zhǔn)庫,random庫主要用于生成隨機數(shù),下面這篇文章主要給大家介紹了關(guān)于Python?random函數(shù)用法的相關(guān)資料,文中通過圖文以及實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • ?Python列表的切片取值詳解

    ?Python列表的切片取值詳解

    這篇文章主要介紹了?Python列表的切片取值詳解,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • jupyter notebook插入本地圖片的實現(xiàn)

    jupyter notebook插入本地圖片的實現(xiàn)

    這篇文章主要介紹了jupyter notebook插入本地圖片的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python OpenCV 調(diào)用攝像頭并截圖保存功能的實現(xiàn)代碼

    Python OpenCV 調(diào)用攝像頭并截圖保存功能的實現(xiàn)代碼

    這篇文章主要介紹了Python OpenCV 調(diào)用攝像頭并截圖保存功能,本文通過兩段實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • 實例詳解Python裝飾器與閉包

    實例詳解Python裝飾器與閉包

    閉包是Python裝飾器的基礎(chǔ)。要理解閉包,先要了解Python中的變量作用域規(guī)則。本文主要給大家介紹Python裝飾器與閉包的相關(guān)知識,需要的朋友可以參考下
    2019-07-07

最新評論