如何在 Laravel 的导航菜单中列出类别 - 子类别

Posted

技术标签:

【中文标题】如何在 Laravel 的导航菜单中列出类别 - 子类别【英文标题】:How to list Category - Subcategory in navigation menu in Laravel 【发布时间】:2018-10-09 20:19:25 【问题描述】:

如何在 Laravel 的导航菜单中列出 Category - Subcategory?

我在下面有这样的查询。

id  Title    parent_id
1   cat1     1
2   cat2     1
3   cat3     2
4   cat4     3

【问题讨论】:

【参考方案1】:

将这些函数添加到您的模型中

public function children()

    return $this->hasMany(Category::class, 'parent_id', 'id');


public function parent()

    return $this->belongsTo(Category::class, 'parent_id', 'id');

那么在你看来:

@foreach ($categories as $category)

   @if($category->parent_id == 0)

      @include('categories.view', $category)

    @endif
@endforeach

categories.view.blade文件的内容

<li id="$category->id" data-jstree='"icon":"fa $category->icon"'>

  <a href="#"> $category->name </a>

  @if ($category->children()->count() > 0)
    <ul>
      @foreach($category->children as $category)
         @include('categories.view', $category)
     @endforeach
   </ul>
  @endif
</li>

【讨论】:

以上是关于如何在 Laravel 的导航菜单中列出类别 - 子类别的主要内容,如果未能解决你的问题,请参考以下文章

子菜单拒绝点击打开

如何在laravel中制定导航栏链接到其页面?

Magento:如何在主导航菜单的下拉菜单中添加活动产品

如何使用 Laravel 创建数据库驱动的多级导航菜单

显示每个类别的最新帖子的下拉导航菜单

如何在 Laravel 的每个页面上加载我的动态菜单项?