laravel - 在 laravel 的主分类中显示子分类产品
问题描述
我的项目有主要类别 - 子类别和产品。每个产品都有一个 subcategory_id,每个子类别都有一个 category_id。
现在的问题是如何选择和显示与主要类别相关的产品。通过关系,我得到子类别产品,如 $subcat->Product,或主要类别的子类别,如 $cat->Subcateogry,但我不知道如何获取主要类别的产品。
更多清除它:
类别(数字商品)
-子类别
(笔记本电脑,手机,电视)
----产品(l1,l2,m1,m2,t1,t2)
在笔记本电脑子类别视图中,我们有 l1 和 l2,但如何在主类别(数字商品)中显示它们。
解决方案
如果您的关系设置正确,您可以使用:
$allProductInMainCategory=MainCategory::where('id',$mainCategoryId)->
with('subCategories.products')->get();
另一种选择是使用嵌套 whereHas
$allProductInMainCategory=Product::whereHas('subCategory',function($query)use($mainCategoryId){
$query->whereHas('mainCategory',function($q)use($mainCategoryId)
{
$q->where('mainCategories.id',$mainCategoryId);
});
})->get();
推荐阅读
- c - Eclipse:输入在显示 printf 语句之前完成
- r - 如何在 r shiny 中设置“特定单元格的背景”?
- ios - 未调用 AVContentKeySessionDelegate 方法
- pandas - 如何对熊猫中列值的实例进行排序和计数?
- angular - Angular ReactiveForms - 如何将验证器设置为整个 FormGroup
- react-native - 反应导航底部选项卡不适用于多个堆栈导航器
- .net - Microsoft Reporting Services:报告查看器另存为工具栏中的按钮不会从 Chrome 下载
- r - R shiny:在交互式 3d 图中结合选择和滑块
- python - PyQtGraph:问题循环通过绘制数据切片
- javascript - 在 javascript 对象上映射 - 获取对象键