亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

django中ObjectDoesNotExist和DoesNotExist的使用方法

發布時間:2020-07-10 10:30:29 來源:億速云 閱讀:407 作者:清晨 欄目:開發技術

這篇文章將為大家詳細講解有關django中ObjectDoesNotExist和DoesNotExist的使用方法,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

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

例1:

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

例2:

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

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

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

先說說引發該問題的具體代碼

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

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

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

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

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

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

關于django中ObjectDoesNotExist和DoesNotExist的使用方法就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

洪雅县| 克什克腾旗| 沐川县| 南康市| 陵水| 白河县| 松溪县| 石楼县| 宁明县| 开封市| 磐安县| 浪卡子县| 灵宝市| 景泰县| 札达县| 晋州市| 莲花县| 淮滨县| 曲麻莱县| 浦东新区| 上虞市| 西华县| 麻城市| 新源县| 肥乡县| 吴江市| 瓦房店市| 顺平县| 潜山县| 醴陵市| 柳河县| 前郭尔| 中宁县| 衡阳市| 台北县| 郴州市| 横山县| 泸溪县| 聂拉木县| 安丘市| 体育|