laravel - Laravel 超级菜单循环
问题描述
我正在学习 laravel 并试图创建一个 Megamenu。但我可以调用父菜单,我堆叠在第一个孩子和第二个孩子。
每个父母下都有同样的孩子。
<div class="navbar-mega">
<div class="dropdown-mega">
@php
$categories = App\Models\Category::where('parent_id', 0)->orderBy('order_level','ASC')->get();
@endphp
@foreach ($categories as $item)
<button class="dropbtn-mega"> {{$item->id}}</button>
@endforeach
<div class="dropdown-content-mega">
<div class="row-mega">
@php
$subcategories = App\Models\Category::where('parent_id',
$item->id)->orderBy('name','ASC')->get();
@endphp
@foreach ($subcategories as $subcategory)
<div class="column-mega">
<h3>{{$subcategories}}</h3>
<a href=""></a>
</div>
@endforeach
</div>
</div>
</div>
</div>
解决方案
这段代码:
$subcategories = App\Models\Category::where('parent_id',$item->id)->orderBy('name','ASC')->get();
不在 $categories 作为 $item 的循环内。因此,当它被执行时,它也会返回相同的类别集(因为 $item 在您的代码中将始终是相同的值。
把它放在循环中:
@foreach ($categories as $item)
<button class="dropbtn-mega"> {{$item->id}}</button>
<div class="dropdown-content-mega">
<div class="row-mega">
@php
$subcategories = App\Models\Category::where('parent_id',
$item->id)->orderBy('name','ASC')->get();
@endphp
@foreach ($subcategories as $subcategory)
<div class="column-mega">
<h3>{{$subcategories}}</h3>
<a href=""></a>
</div>
@endforeach
</div>
</div>
@endforeach
它应该可以正常工作。
推荐阅读
- javascript - 访问 vue.js 模板中的 php 数组
- python - 我不知道为什么我的“if”语句不起作用
- python - 如何修复 ValueError:参数的类型为 python 不受支持
- google-api - Google API Key results in permanent "loading..." message
- java - .addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
- java - How to do "builder.parse(xml file stored inside of this jar)"?
- excel-formula - 仅当 B 列中的单元格包含“X”时,才在 G 列中添加值的公式
- android - Generate signed APK - Signature version - What to choose?
- c# - String character array
- mysql - Strange behavior of temporary auto increment column in MySQL against HAVING clause