다음 Laravel 튜토리얼 칼럼에서는 Laravel 프레임워크에서 Infinitus 분류를 구현하는 방법을 소개하겠습니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다!
테이블 구조는 다음과 같습니다.
CREATE TABLE `goods_category` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id', `name` varchar(500) DEFAULT '' COMMENT '分类名称', `pid` int(5) unsigned DEFAULT '0' COMMENT '父级id', `level` tinyint(3) unsigned DEFAULT '1' COMMENT '分类等级', `status` tinyint(3) unsigned DEFAULT '0' COMMENT '分类状态:0-禁用,1-正常', `created_at` timestamp NULL DEFAULT NULL COMMENT '创建时间', `updated_at` timestamp NULL DEFAULT NULL COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, KEY `status` (`status`)) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=utf8mb4 COMMENT='商品分类表';데이터 저장 형식:
비즈니스 코드:
// 模型文件 public function children() { return $this->hasMany(get_class($this), 'pid' ,'id'); } public function allChildren() { return $this->children()->with( 'allChildren' ); }
// 控制器 $list = GoodsCategory::with('allChildren')->first();dd($list);처리된 데이터 :
이 시점에서 Infinitus 분류를 구현하는 두 가지 재귀 및 참조 방법과 비교하면 laravel 프레임워크 Infinitus 분류가 훨씬 간단하고 효율적입니까? 토론하려면 댓글 영역에 메시지를 남겨주세요.
위 내용은 Laravel 프레임워크는 무한 분류를 어떻게 구현합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!