Django Rest Framework как проверить существует объект или нет?
Я пытаюсь проверить, существует ли объект или нет, и вот как я это делаю:
try:
control = Card.objects.filter(cc_num = cc_number)[0]
exists = True
except (IndexError):
exists = False
Это работает, но мне интересно, есть ли более практичный способ?
вы можете сделать примерно следующее:
if model.objects.filter(email = email).exists():
# at least one object satisfying query exists
else:
# no object satisfying query exists
Проверьте это: https://docs.djangoproject.com/en/stable/ref/models/querysets/#django.db.models.query.QuerySet.exists
попробуйте это: используйте Card.objects.get(), поскольку cc_num уникален, и будет получен только один объект, если он существует
try:
controls = Card.objects.get(cc_num == cc_number)
#do something
except DoesNotExist:
#do something in case not
https://www.codegrepper.com/code-examples/python/check+if+a+value+exist+in+a+model+Django
вы можете попробовать вот так, импортируйте это
from django.core.exceptions import ObjectDoesNotExist
try:
controls = Card.objects.get(cc_num == cc_number)
#do something
except ObjectDoesNotExist:
#do something in case not