【发布时间】:2018-10-09 23:27:36
【问题描述】:
我正在尝试使用数据库在我网站的侧边栏上添加菜单项。我的数据库结构如下:
ID / Product_Name/ Product_Type
1 / product1 / type1
2 / product2 / type1
3 / product3 / type2
4 / product4 / type2
我需要一个侧边栏,将每种类型列为菜单项,将属于该类型的产品作为子菜单项:
Type1
product1
product2
Type2
product3
product4
然而,使用我当前的代码,我实现了每个菜单项,但我的子菜单显示了整个数据库中的每个产品,而不仅仅是属于该类型的产品。
我的控制器:
public function index()
{
//get all products
$products = Product::all();
//get each type
$types = Product::distinct()->get(['Type']);
return view('pages.getstarted')->with('products', $products)
->with('types', $types);
}
我的看法:
<ul class="list-sidebar">
@foreach($types as $type)
<li class="header">
<a href="#" data-toggle="collapse" data-target="#1">{{$type->Type}}<span class="fa fa-chevron-left pull-right"></span></a>
<ul class="sub-menu collapse" id="1">
@foreach($products as $product)
<li><a href="1">{{$product->Product_Name}}</a></li>
@endforeach
</ul>
</li>
@endforeach
</ul>
我对 Laravel 非常陌生,因此我们将不胜感激。
【问题讨论】: