在Django中,ObjectDoesNotExist
和DoesNotExist
是異常類(lèi),通常在數(shù)據(jù)庫(kù)查詢(xún)時(shí)用于捕獲對(duì)象不存在的情況。
ObjectDoesNotExist
是django.core.exceptions.ObjectDoesNotExist
的異常類(lèi),用于捕獲單個(gè)對(duì)象查詢(xún)時(shí)未找到對(duì)象的情況。例如:
from django.core.exceptions import ObjectDoesNotExist
from myapp.models import MyModel
try:
obj = MyModel.objects.get(id=1)
except ObjectDoesNotExist:
print("Object does not exist")
DoesNotExist
是django.core.exceptions.DoesNotExist
的異常類(lèi),通常用于捕獲查詢(xún)集合沒(méi)有返回任何對(duì)象的情況。例如:
from django.core.exceptions import DoesNotExist
from myapp.models import MyModel
try:
obj = MyModel.objects.filter(name='myname').get()
except DoesNotExist:
print("Object does not exist")
在使用這兩個(gè)異常類(lèi)時(shí),通常在數(shù)據(jù)庫(kù)查詢(xún)后的try-except語(yǔ)句中捕獲異常,以便處理對(duì)象不存在的情況。