Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Имеется Laravel 5 версии хочу сделать хорошее двухуровневое меню делаю так:
В контроллере получаю данные:
//получаем категории первого уровня и второго уровня
$cats_level1 = \App\Cat::select(['id','name','link'])->get();
$cats_level2 = \App\Subcat::select(['cat_id','name','img'])->get();
// link и img забираю для иных дел
//$unique_level1 = $cats_level2->unique('cat_id');//выбираем уникальные коллекции (это попытка оптимизировать код)
выбрасываю во view blade
'menu1' => $cats_level1,
'menu2' => $cats_level2,
Во вьюшке так
<div class="panel-group" id="accordion">
@foreach($menu1 as $item_level1)
<!-- начало -->
<div class="panel panel-default">
<div class="panel-heading">
<h4 class="panel-title">
<a data-toggle="collapse" data-parent="#accordion" href="#collapse{{ $item_level1->id }}" aria-expanded="false" class="collapsed">{{ $item_level1->name }}</a>
</h4>
</div>
<div id="collapse{{ $item_level1->id }}" class="panel-collapse collapse" aria-expanded="false" style="height: 0px;">
<div class="panel-body">
<table class="table">
<tbody>
@foreach($menu2 as $item_level2)
@if ($item_level1->id == $item_level2->cat_id)
<tr>
<td>
<span class="text-primary"></span><a href="{{ $item_level2->link }}">{{ $item_level2->name }}</a>
</td>
</tr>
@endif
@endforeach
</tbody>
</table>
</div>
</div>
</div>
<!-- конец -->
@endforeach
</div>
Все в принципе работает но хотелось бы на первом foreach знать есть ли вложенное меню (и не ходить кругами во втором foreach :D)
P/s это неплохое меню но в моем случае структура бд должна остаться именно так(2 таблицы)
Изменено blackdark20 (29.11.2017 09:28:58)
Не в сети
https://github.com/lavary/laravel-menu
https://goo.gl/cgUSck 58 урок + -
Изменено sam (29.11.2017 10:07:06)
Не в сети
п.с. под 55м уроком всяко разное оставил, по проблемным местам. в том числе и по меню этому. если че не получится - пиши. поясню. сам уже сделал это меню под данным урокам. там можно выводить из БД, а можно статическое забить.
Не в сети
Страницы 1