如何在where子句的laravel中使用with方法?



我只需要那些变体大小字段很小的产品。我该怎么办?上面的查询给了我所有的产品,但有空的变体

$result=$categories->with([
'products' => function ($product) {
return $product->with([
'variants' => function ($variants) {
return $variants->where('size','tiny');
}
]);
}
])->get();

像这样修改你的代码

$result=$categories->with([
'products' => function ($product) {
return $product->whereHas(
'variants', function ($variants) {
return $variants->where('size','tiny');
}
]);
}
])->get();

最新更新