اذهب إلى المحتوى

السؤال

نشر

لدي جدولين مع علاقة one to many. الجدول الأول يسمى "categories" والآخر هو "users". يمكن أن يكون لكل تصنيف categoryواحد العديد من المستخدمين.

لذلك إذا أردت الحصول على جميع التصنيفات categories مع جميع المستخدمين ، فسأفعل هذا فقط:

category::with("users")->get();

لكني أريد أيضًا معرفة عدد المستخدمين لكل تصنيف، وحاولت القيام بذلك من خلال إستخدام التابع count مع الكود السابق:

Location::with("users")->count("users")->get();

لكن هذا الأمر لم ينجح.

كيف يمكنني معرفة المستخدمين لكل تصنيف في لارافيل Laravel؟

Recommended Posts

  • 1
نشر

يمكن الاستفادة من التابع withCount وتمرير اسم العلاقة التي تحاول عد السجلات فيها ليصبح الاستعلام عن التصنيفات كالتالي:

$categories = Category::with("users")->withCount("users")->get();

سيضيف ذلك خاصية جديدة بالاسم users_count لكل نموذج من النتيجة يشير إلى عدد المستخدمين المرتبط بهذا النموذج:

foreach($categories as $category) {
 echo $category->users_count; // عدد المستخدمين في هذا التصنيف
}

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...