Métodos exists e contains no Django
Método exists
O método exists()
(e sua versão assíncrona aexists()
) verifica se o conjunto QuerySet contém registros, retornando True
se houver registros e False
caso contrário:
from .models import Person
is_present = Person.objects.filter(name="Tom").exists()
if is_present:
print("O conjunto contém registros")
else:
print("O conjunto está vazio")
Método contains
O método contains()
(e sua versão assíncrona acontains()
) verifica se um conjunto QuerySet contém um registro específico. Ele retorna True
se o registro estiver presente e False
caso contrário:
from .models import Person
# Seleciona o último registro
last_person = Person.objects.last()
# Verifica se o registro está entre aqueles cujo "age" é menor que 35
is_present = Person.objects.filter(age__lt=35).contains(last_person)
if is_present:
print("O registro está presente no conjunto")
else:
print("O registro não está presente no conjunto")
Documentação oficial: