Laravel框架如何實現(xiàn)無限極分類?

下面由Laravel教程欄目給大家介紹Laravel 框架實現(xiàn)無限極分類的方法,希望對需要的朋友有所幫助!

橋東網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站開發(fā)等網(wǎng)站項目制作,到程序開發(fā),運營維護。創(chuàng)新互聯(lián)于2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)。

最近開發(fā)商品功能,在嘗試遞歸和引用方式后,驀然回首,突然發(fā)現(xiàn)laravel框架有更簡單高效的實現(xiàn)方式,無限極分類實踐,open code與大家共享!感興趣的Mark一下,謝謝~

表結(jié)構(gòu)如下:

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 '分類狀態(tài):0-禁用,1-正常',
  `created_at` timestamp NULL DEFAULT NULL COMMENT '創(chuàng)建時間',
  `updated_at` timestamp NULL DEFAULT NULL COMMENT '更新時間',
  PRIMARY KEY (`id`) USING BTREE,
  KEY `status` (`status`)) ENGINE=InnoDB AUTO_INCREMENT=32 DEFAULT CHARSET=utf8mb4 COMMENT='商品分類表';

數(shù)據(jù)存儲格式:

業(yè)務(wù)代碼:

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

處理后數(shù)據(jù):

至此,laravel框架無限極分類實現(xiàn)完畢,相比遞歸和引用實現(xiàn)無限極分類的兩種方式,是不是簡單高效很多呢,關(guān)于更多l(xiāng)aravel特性,歡迎評論區(qū)留言探討。

當前文章:Laravel框架如何實現(xiàn)無限極分類?
網(wǎng)頁網(wǎng)址:http://muchs.cn/article20/chchjo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、面包屑導(dǎo)航、網(wǎng)站制作、微信小程序外貿(mào)建站、虛擬主機

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計