İçeriğe geç

Count Yerine Exists (ARCH2063)

Anahtar python.orm.count-vs-exists · Önem info · Kategori orm

Satır var mı diye count() > 0 kullanmak tüm satırları saydırır; exists() ilk satırda durarak çok daha ucuza aynı sonucu verir.

if User.objects.filter(email=email).count() > 0:
raise ValueError("kayıtlı") # gereksiz tam sayım
if User.objects.filter(email=email).exists():
raise ValueError("kayıtlı") # ilk satırda durur

Varlık kontrolünde count() > 0 yerine kısa devre yapan exists() kullanın.