2016-04-26 119 views
0

我有两个表获取记录 - laravel雄辩

ProductAttribute

- ID (PK) 
- ProdID (FK) 
- AttrName 

产品

- ID (PK) 
- ProdName 
- MerchantID(FK) 

现在我想获取特定产品的所有属性,其中商户id = 5。 任何人都可以帮助我在中构建查询雄辩。

我创造了我自己,但它显示了所有产品的所有属性与商户,并显示出空产品阵列,其中商家ID是不是5

请帮我解决了这一点。

回答

0

你可以得到所有需要的Products与热切加载像这样的属性:

$products = Product::where('id', '>', 5)->get()->load('productAttributes'); 

我觉得代码段是不言自明。要只选择一种所需产品,您可以用Product::find(5)(或用Product::findMany([1, 2, 3])取代Product::where('id', '>', 5)以获得多种产品)。

+0

感谢您的回复。我想根据传递的商家ID获取产品属性数组。我有商户ID,我想要获得产品属性数组 –

+0

要做到这一点,您可以简单地'Merchant :: find(5) - > products() - > get()'。换句话说,您需要首先检索该商家,然后获取他的产品。为特定商家调用'products()'将为您提供仅与该商家相关的产品。 –

+0

产品()来自哪里? –