تخطَّ إلى المحتوى

exists()

فحص وجود سجل بلا جلبه exists()

exists() تُرجع True/False بسرعة — هل يوجد سجل واحد على الأقل مطابق، بدون تحميل أي بيانات فعلية.

أكفأ طريقة لسؤال «هل يوجد...؟» — أسرع من count() > 0 وأسرع بكثير من تحويل القائمة كاملة وفحص طولها.

الصياغة

Model.objects.filter(...).exists()

📄 مثال

if Post.objects.filter(author=user, status="draft").exists():
    print("عندك مسوّدات غير منشورة")

💡 نصائح عملية

  • استخدمها دائمًا لأسئلة true/false بدل جلب البيانات وفحص طولها

⚠️ أخطاء شائعة

  • استخدام if queryset: بدل if queryset.exists(): — الأول يُحمِّل كل النتائج فعليًا للفحص، الثاني لا

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار DJANGO الكامل بالعربي.