मैं प्रत्येक श्रेणी को मिली बिक्री की संख्या की गणना करना चाहता हूं और इसे एक सरणी में सहेजना चाहता हूं क्योंकि मुझे इसे शीर्ष चार्ट में प्रदर्शित करना है।

यहाँ मेरे db . की एक संरचना है

Category db:
category_name

Product db:
product_name;
category_id

OrderItem:
order_id;
product_id;
qty;

ऑर्डर आइटम संबंध:

public function product(){
        return $this->belongsTo(Product::class,'product_id','id');
    }

मैं थोड़ा उलझन में हूं कि उससे कैसे पूछताछ की जाए।

0
SyedKhizer 5 जून 2021, 23:18

1 उत्तर

सबसे बढ़िया उत्तर

ठीक है, ऐसा करने के लिए आपको संभवतः प्रत्येक श्रेणी के लिए सभी ऑर्डर प्राप्त करने के लिए हैज़ मेनी थ्रू संबंध लागू करना चाहिए, तो आप उस क्रम में बेचे गए सभी आइटमों की गणना करने के लिए एक विधि बना सकते हैं, यदि ऐसा है तो आप के बाद फिर से।

यहां बताया गया है कि आप ऐसा कैसे कर सकते हैं

आपके श्रेणी मॉडल में:

public function orderItems()
{
    return $this->hasManyThrough(OrderItem::class, Product::class);
}

यह आपको उस श्रेणी के साथ किए गए आदेशों के संग्रह तक पहुंच प्रदान करेगा, फिर आप बस इस तरह कॉल करेंगे:

$category->orderItems;

आप अपनी गणना करने के लिए अपनी विधियों में इसका उपयोग कर सकते हैं।

इसके बारे में अधिक पढ़ने के लिए, has-many- के दस्तावेज़ देखें के माध्यम से.

1
Héctor William 13 जून 2021, 04:26
1
इसे बेहतर ढंग से समझने में मदद करने के लिए धन्यवाद, उस संबंध ने मेरे मामले के लिए काम किया।
 – 
SyedKhizer
12 जून 2021, 17:13