远程关系,选择产品使用的品牌

时间:2017-10-31 23:40:35

标签: php laravel laravel-eloquent

我正在开发电子商务应用,我有以下表格: products: id, name, description, category_id, brand_id, sku, created_at... etc

brands: id, name

categories: id,name,parent_id

说我有这个,要检索具有这些类别的产品,我如何检索产品使用的所有品牌而不重复?由于不同的产品可以拥有相同的品牌,因此不会在过滤侧边栏中显示。 $products = Product::whereIn('category_id', [1, 2, 3])->get();

1 个答案:

答案 0 :(得分:0)

要选择不同的brand_id,可以在查询构建器上使用distinct()方法。

对产品的可能用途可能是:

$products = Product
    ::distinct()
    ->select('brand_id')
    ->whereIn('category_id', [1, 2, 3])
    ->get();
foreach ($products as $product) {
    print "{$product->brand->name}, ";
}