0
我有2個型號:Product
和Carousel
。他們倆都建立了Many To Many
關係。我有一個pivot
表carousel_product
。groupBy在QueryBuilder中只返回1個特定ID的結果集laravel 5
透視表,我有幾個DATAS像這樣:
id carousel_id product_id created_at updated_at
1 2 2 -- --
2 2 3 -- --
3 2 4 -- --
4 2 5 -- --
5 2 6 -- --
6 3 7 -- --
7 3 8 -- --
8 3 9 -- --
9 3 10 -- --
10 3 11 -- --
現在我想取回所有處於carousel_id = 2
和carousel_id = 3
對於這個產品,我使用查詢生成器中我的控制器:
public function index()
{
$carousels = Carousel::where('display', 'Enabled')->get();
$products = DB::table('carousel_product AS cp')
->join('products AS p', 'p.id', '=', 'cp.product_id')
->join('carousels AS c', 'c.id', '=', 'cp.carousel_id')
->select(
'p.id AS prod_id',
'p.name AS prod_name',
'p.code AS prod_code',
'p.short_description AS prod_short_desc',
'p.price AS prod_price',
'p.discount_price AS prod_disc_price'
)->groupBy('cp.carousel_id')->get();
dd($products);
return view('home', compact('carousels', 'products'));
}
的dd($products)
輸出是2
和01
我想要那個特定的所有產品carousel_id
,並將其顯示在我的視圖中,以便只顯示該旋轉木馬。
評分:所有的值都來自數據庫。
我該如何做到這一點?
什麼也沒做..它返回了我在'select()'方法中傳遞的產品的一切,沒有任何'carousel_id'組。這意味着它將每件產品從'product_id = 2'返回到'product_id = 11'。如果你不介意,你可以幫我解碼嗎? –