laravel7学习之无限级分类的示例

  介绍

这篇文章主要介绍laravel7学习之无限级分类的示例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

<强>写在前面的话

无限级分的类,基本在所有的网站都有涉及,所以是必须要掌握的知识点,在网上看很多资料文档,要么不细致,要么根本不对,要么达不到预想的目标,其实实现的思路和方法非常简单,今天我们一起来实现一下。

 laravel7学习之无限级分类的示例

<强>创建模型控制器数据迁移文件

这里直接使用工匠命令进行创建

#, -a 其实就是,创建包含模型,控制器(资源),数据迁移文件(工厂模型,种子)   php  artisan : model  -a 类别

运行这条命令,就可以创建好资源控制器。

 laravel7学习之无限级分类的示例

<强>修改数据迁移文件

首先修改数据迁移文件xxx_create_categories_table。

打开文件,修改里面了的方法,添加相应字段。

模式::创建(& # 39;类别# 39;,,function  (Blueprint  $表),{   ,,表→美元id ();   ,,表→美元字符串(& # 39;标题# 39;,,100)→评论(& # 39;分类名称& # 39;);   ,,表→美元字符串(& # 39;名字# 39;,,100)→评论(& # 39;分类标识& # 39;);   ,,表→美元字符串(& # 39;描述# 39;,,255)→nullable()→评论(& # 39;分类描述& # 39;);   ,,表→美元整数(& # 39;pid # 39;)→默认(0)→评论(& # 39;分类id # 39;);   ,,表→美元整数(& # 39;水平# 39;)→默认(1)→评论(& # 39;分类层级& # 39;);   ,,表→美元整数(& # 39;排序# 39;)→默认(0)→评论(& # 39;排序& # 39;);   ,,表→美元整数(& # 39;状态# 39;)→默认(1)→评论(& # 39;状态:0 -禁用,1 -正常& # 39;);   美元,才能表→时间戳();   });才能

 laravel7学习之无限级分类的示例

<强>执行迁移命令

php  artisan 迁移

<强>嵌套模型实现读取

//App \ \ Category.php模型   ,   public  function 类别()   ,{   return 才能;这→美元hasMany (self::类,,& # 39;pid # 39;,, & # 39; id # 39;)→与(& # 39;类别# 39;);   以前,}

<>强控制器调用

//app \ Http \ \ CategooryController.php控制器   #,使用模型   use 应用\ \模型类别;   ,   public  function 指数()   ,{   美元才能categories =,类别::与(& # 39;类别# 39;)→地方(& # 39;pid # 39;,, 0)→();   return 才能视图(& # 39;category.index& # 39;,,紧凑(& # 39;类别# 39;));   以前,}

<强>添加路由

在路线/网络。php,我们添加以下内容:

路线::获得(& # 39;类别# 39;,,& # 39;CategoryController@index& # 39;);

<强>叶片模版渲染

这里使用递归渲染。

/视图/categories.blade在资源。php文件:

& lt; table 类=皌able  table-borderless  table-data3"比;   & lt;才能thead>   ,,& lt; tr>   ,,,& lt; th>编号& lt;/th>   ,,,& lt; th>分类名称& lt;/th>   ,,,& lt; th>分类标识& lt;/th>   ,,,& lt; th>分类描述& lt;/th>   ,,,& lt; th>创建时间& lt;/th>   ,,,& lt; th>状态& lt;/th>   ,,,& lt; th>操作& lt;/th>   ,,& lt;/tr>   & lt;才能/thead>   & lt;才能tbody>   ,,@foreach  (categories 美元;as 类别美元)   ,,& lt; tr 类=皌r-shadow"比;   ,,,& lt; td>{{,类别→美元id }} & lt;/td>   ,,,& lt; td>{{,类别→美元title }} & lt;/td>   ,,,& lt; td>   ,,,,& lt; span 类=癰lock-email"在{{,类别→美元name }} & lt;/span>   ,,,& lt;/td>   ,,,& lt; td 类=癲esc"在{{,类别→美元description }} & lt;/td>   ,,,& lt; td>{{,类别→美元created_at }} & lt;/td>   ,,,& lt; td>   ,,,,& lt; span 类=白刺猵rocess"在{{,类别→美元status }} & lt;/span>   ,,,& lt;/td>   ,,,& lt; td> & lt;/td>   ,,& lt;/tr>   ,,& lt; tr 类=皊pacer"祝辞& lt;/tr>   美元,才能@foreach (类别→categories  as  childCategory美元)   ,,@include (& # 39; category.child_category& # 39;,, (& # 39; child_category& # 39;,=祝辞,$ childCategory])   @endforeach。才能   @endforeach。才能   & lt;才能/tbody>   ,& lt;/table>

laravel7学习之无限级分类的示例