>  기사  >  PHP 프레임워크  >  Laravel에서 무한 분류를 구현하는 방법

Laravel에서 무한 분류를 구현하는 방법

藏色散人
藏色散人앞으로
2020-11-16 13:43:552165검색

튜토리얼 칼럼입니다. 도움이 필요한 친구들에게 도움이 되길 바랍니다! 최근에 제품 기능을 개발한 후, 갑자기 뒤돌아보니 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='商品分类表';

데이터 저장 형식:

Laravel에서 무한 분류를 구현하는 방법비즈니스 코드:

    // 模型文件
    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);

처리된 데이터:

이상입니다. laravel 프레임워크 Infinitus 분류가 구현되었습니다. Infinitus 분류를 구현하는 두 가지 재귀 및 참조 방법과 비교하면 훨씬 간단하고 효율적일까요? 더 많은 laravel 기능을 원하시면 댓글 영역에 메시지를 남겨주세요. ㅋㅋㅋ

위 내용은 Laravel에서 무한 분류를 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제