按急切加载值对集合进行排序
Sort collection by eager load value
我有一个 brand
table, models
table, categories
table.
brand
与 models
有 hasMany
关系,models
与 brand
有 belongsTo
关系,categories
有 belongsToMany
与 models
table 的关系。一切正常。
现在,如何获取特定类别中品牌的所有型号?
我试过这个:
$categories = Category::with(['models'=>function($query) use ($brand_name){
$query->with(['brand'=>function($query) use ($brand_name){
$query->where('name', $brand_name);
}]);
}])->where('name', 'presses')->first();
但它与选择特定类别中的所有模型具有相同的效果。它没有过滤品牌名称。
我该怎么做?
试试看效果如何
$categories = Category::with(['models'=>function($query) use ($brand_name){
$query->whereHas('brand', function($query) use ($brand_name){
$query->where('name', $brand_name);
});
},'models.brand'])->where('name', 'presses')->first();
我有一个 brand
table, models
table, categories
table.
brand
与 models
有 hasMany
关系,models
与 brand
有 belongsTo
关系,categories
有 belongsToMany
与 models
table 的关系。一切正常。
现在,如何获取特定类别中品牌的所有型号?
我试过这个:
$categories = Category::with(['models'=>function($query) use ($brand_name){
$query->with(['brand'=>function($query) use ($brand_name){
$query->where('name', $brand_name);
}]);
}])->where('name', 'presses')->first();
但它与选择特定类别中的所有模型具有相同的效果。它没有过滤品牌名称。
我该怎么做?
试试看效果如何
$categories = Category::with(['models'=>function($query) use ($brand_name){
$query->whereHas('brand', function($query) use ($brand_name){
$query->where('name', $brand_name);
});
},'models.brand'])->where('name', 'presses')->first();