Ce qui suit est
Laravel La colonne tutoriel présentera à Laravel comment obtenir une classification de pôles infinie, j'espère que cela sera utile aux amis dans le besoin !
J'ai récemment développé des fonctions de produit. Après avoir essayé les méthodes de récursion et de référence, j'ai soudainement regardé en arrière et découvert que le framework laravel avait une méthode d'implémentation plus simple et plus efficace, des meilleures pratiques de classification Infinitus, un code ouvert à partager avec tout le monde. ! Marquez si vous êtes intéressé, merci~
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='商品分类表';
Copier après la connexion
// 模型文件
public function children() {
return $this->hasMany(get_class($this), 'pid' ,'id');
}
public function allChildren() {
return $this->children()->with( 'allChildren' );
}
Copier après la connexion
rrree
À ce point, laravel Le framework de classification Infinitus a été implémenté. Par rapport aux deux méthodes de récursion et de référence pour implémenter la classification Infinitus, est-ce beaucoup plus simple et plus efficace. Pour plus de fonctionnalités de laravel, veuillez laisser un message dans la zone de commentaire pour en discuter.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!