Я слышал предложения использовать следующее:
if qs.exists():
...
if qs.count():
...
try:
qs[0]
except IndexError:
...
Скопировано из комментария ниже: «Я ищу для оператора типа «В MySQL и PostgreSQL count () быстрее для коротких запросов, exists () быстрее для длинных запросов и используйте QuerySet [0], когда вероятно, что вам понадобится первый элемент, и вы хотите проверьте, что он существует. Однако, когда count () работает быстрее, он лишь ненамного быстрее, поэтому рекомендуется всегда использовать exists () при выборе между двумя. "