Вывод меню php laravel

Всем привет! Например, я перешел на стр. категория id = 1,

  • не работает условие (чтобы последней категории сделать ссылку в include):

            <a href="#">{{$categoryItem->name}}</a>
    
  • как мне отлавливать какие категории открыты по цепочки и вставлять в include checked, чтобы они были открыты в самом меню, так как мы находимся в категории:

            <input type="checkbox" checked="checked">
    

Контроллер:

    public function index($s_id, $category_id)
{
    $user_id = Auth::user()->id;

    $s_one = S::S($s_id, $user_id)->first();

    $product = Product::where([
        ['s_id', '=', $s_id],
        ['category_id', '=', $category_id]
    ])->paginate(3);

    return view('assortment.category.index', [
        'category' => [],
        'categories'  => Category::with(['children',])->where('parent_id', 0)->get(),
        's_one' => $s_one,
        'product' => $product,
        'category_id' => $category_id,
    ]);
}

blade:

 <nav class="vertical_nav">
     <ul class="cd-accordion-menu">
          @include('assortment.category.recursive_menu')
      </ul>
 </nav>

Модель:

public function children()
{
    return $this->hasMany(Category::class, 'parent_id', 'id');
}

include:

 @foreach($categories as $categoryItem)
     <li>
         {{--проверяем существуют ли вложенные категории--}}
         @if(isset($categoryItem->children) )
             <input type="checkbox"  id="{{$categoryItem->id}}" name="{{$categoryItem->id}}" >
             <label for="{{$categoryItem->id}}">{{$categoryItem->name}}</label>
             <ul>
                 @include('assortment.category.recursive_menu', [
                 'categories' => $categoryItem->children,
                 ])
             </ul>
         @else
                 <a href="#">{{$categoryItem->name}}</a>
         @endif
     </li>
 @endforeach

Ответы (0 шт):