laravel 5.4中实现无限级分类的方法示例


Posted in PHP onJuly 27, 2017

前言

本文主要给大家介绍的是关于laravel 5.4中实现无限级分类的相关内容,分享出来供有需要的朋友们参考学习,下面话不多说,来一起看看详细的介绍吧。

方法如下:

1、建立表

php artisan make:migration create_category_table --create=category

在database/migrations/下找到你的迁移文件

建入:

<?php
 
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
 
class CreateCategoryTable extends Migration
{
 /**
 * Run the migrations.
 *
 * @return void
 */
 public function up()
 {
 Schema::create('categorys', function (Blueprint $table) {
  $table->increments('id');
  $table->integer('parent_id');
  $table->string('code');
  $table->string('name');
  $table->string('path');
  $table->timestamps();
 });
 }
 
 /**
 * Reverse the migrations.
 *
 * @return void
 */
 public function down()
 {
 Schema::dropIfExists('categorys');
 }
}
php artisan migrate

2、建Model 在app/Category.php

php artisan make: model Category -m
<?php
 
namespace App;
 
use Illuminate\Database\Eloquent\Model;
 
class Category extends Model
{
 public function childCategory() {
 return $this->hasMany('App\Category', 'parent_id', 'id');
 }
 
 public function allChildrenCategorys()
 {
 return $this->childCategory()->with('allChildrenCategorys');
 }
}

3、调用

$categorys = App/Category::with('allChildrenCategorys')->first();

$categorys->allChildrenCategorys;

$categorys->allChildrenCategorys->first()->allChildrenCategorys;

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者使用laravel能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
Apr 16 PHP
php+mysql开源XNA 聚合程序发布 下载
Jul 13 PHP
php 获取本机外网/公网IP的代码
May 09 PHP
字母顺序颠倒而单词顺序不变的php代码
Aug 08 PHP
深入理解:XML与对象的序列化与反序列化
Jun 08 PHP
php通过ajax实现双击table修改内容
Apr 28 PHP
destoon实现调用热门关键字的方法
Jul 15 PHP
Discuz7.2版的faq.php SQL注入漏洞分析
Aug 06 PHP
支持中文、字母、数字的PHP验证码
May 04 PHP
使用Huagepage和PGO来提升PHP7的执行性能
Nov 30 PHP
必须收藏的php实用代码片段
Feb 02 PHP
yii2简单使用less代替css示例
Mar 10 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
Jul 27 #PHP
PHP实现的Redis多库选择功能单例类
Jul 27 #PHP
PHP策略模式定义与用法示例
Jul 27 #PHP
windows下的WAMP环境搭建图文教程(推荐)
Jul 27 #PHP
php表单文件iframe异步上传实例讲解
Jul 26 #PHP
php实现的统计字数函数定义与使用示例
Jul 26 #PHP
PHP SFTP实现上传下载功能
Jul 26 #PHP
You might like
简单PHP上传图片、删除图片实现代码
2010/05/12 PHP
PHP session会话的安全性分析
2011/09/08 PHP
php获取新浪微博数据API实例
2013/11/12 PHP
jquery+thinkphp实现跨域抓取数据的方法
2016/10/15 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
删除javascript中注释语句的正则表达式
2014/06/11 Javascript
angular中使用路由和$location切换视图
2015/01/23 Javascript
JS组件Form表单验证神器BootstrapValidator
2016/01/26 Javascript
JSON格式的时间/Date(2367828670431)/格式转为正常的年-月-日 格式的代码
2016/07/27 Javascript
jquery uploadify隐藏上传进度的实现方法
2017/02/06 Javascript
使用AngularJS编写多选按钮选中时触发指定方法的指令代码详解
2017/07/24 Javascript
vue.js 双层嵌套for遍历的方法详解, 类似php foreach()
2018/09/07 Javascript
详解Vue组件插槽的使用以及调用组件内的方法
2018/11/13 Javascript
微信小程序rich-text富文本用法实例分析
2019/05/20 Javascript
nodejs实现UDP组播示例方法
2019/11/04 NodeJs
微信小程序商品详情页底部弹出框
2019/11/22 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
2020/08/11 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
[59:48]DOTA2-DPC中国联赛 正赛 VG vs Magma BO3 第一场 1月26日
2021/03/11 DOTA
Python中的文件和目录操作实现代码
2011/03/13 Python
python去除字符串中的换行符
2017/10/11 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
Python模拟FTP文件服务器的操作方法
2020/02/18 Python
基于matplotlib中ion()和ioff()的使用详解
2020/06/16 Python
使用html5 canvas 画时钟代码实例分享
2015/11/11 HTML / CSS
澳大利亚汽车零部件、音响及配件超市:Automotive Superstore
2018/06/19 全球购物
.NET里面如何取得当前的屏幕分辨率
2012/12/06 面试题
小学安全汇报材料
2014/08/14 职场文书
2014老师三严三实对照检查材料思想汇报
2014/09/18 职场文书
社区党的群众路线教育实践活动总结材料
2014/10/31 职场文书
委托培训协议书
2014/11/17 职场文书
出纳工作检讨书范文
2014/12/27 职场文书
沈阳故宫导游词
2015/01/31 职场文书
机关工会工作总结2015
2015/05/26 职场文书
班主任远程培训研修日志
2015/11/13 职场文书
go web 预防跨站脚本的实现方式
2021/06/11 Golang