pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

    <i id='hVIeL'><tr id='hVIeL'><dt id='hVIeL'><q id='hVIeL'><span id='hVIeL'><b id='hVIeL'><form id='hVIeL'><ins id='hVIeL'></ins><ul id='hVIeL'></ul><sub id='hVIeL'></sub></form><legend id='hVIeL'></legend><bdo id='hVIeL'><pre id='hVIeL'><center id='hVIeL'></center></pre></bdo></b><th id='hVIeL'></th></span></q></dt></tr></i><div class="cdahr8m" id='hVIeL'><tfoot id='hVIeL'></tfoot><dl id='hVIeL'><fieldset id='hVIeL'></fieldset></dl></div>

  1. <legend id='hVIeL'><style id='hVIeL'><dir id='hVIeL'><q id='hVIeL'></q></dir></style></legend>

    <small id='hVIeL'></small><noframes id='hVIeL'>

      <bdo id='hVIeL'></bdo><ul id='hVIeL'></ul>
  2. <tfoot id='hVIeL'></tfoot>

    1. Laravel 在同一個表中返回父母的孩子

      Laravel returning children of parents in same table(Laravel 在同一個表中返回父母的孩子)
    2. <legend id='DSWoN'><style id='DSWoN'><dir id='DSWoN'><q id='DSWoN'></q></dir></style></legend>

          <bdo id='DSWoN'></bdo><ul id='DSWoN'></ul>

            • <i id='DSWoN'><tr id='DSWoN'><dt id='DSWoN'><q id='DSWoN'><span id='DSWoN'><b id='DSWoN'><form id='DSWoN'><ins id='DSWoN'></ins><ul id='DSWoN'></ul><sub id='DSWoN'></sub></form><legend id='DSWoN'></legend><bdo id='DSWoN'><pre id='DSWoN'><center id='DSWoN'></center></pre></bdo></b><th id='DSWoN'></th></span></q></dt></tr></i><div class="8xeearu" id='DSWoN'><tfoot id='DSWoN'></tfoot><dl id='DSWoN'><fieldset id='DSWoN'></fieldset></dl></div>
            • <tfoot id='DSWoN'></tfoot>
                <tbody id='DSWoN'></tbody>

              <small id='DSWoN'></small><noframes id='DSWoN'>

              1. 本文介紹了Laravel 在同一個表中返回父母的孩子的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                使用 Laravel 5.1,我嘗試從 MySQL 類別表創建菜單列表.我的服務提供者返回數據,但我不明白如何在 foreach 循環中創建子類別.當我執行循環時,只返回子查詢的最后一行.任何指導將不勝感激.

                Using Laravel 5.1, I am trying to create a menu list from a MySQL categories table. My service provider returns data, but I don't understand how to create the child categories in a foreach loop. When I perform the loop, only the last row of the child query is returned. Any guidance would be appreciated.

                類別表

                id  | cat_name      | cat_parent_id
                --- | --------------| ------------- 
                1   | Parent Cat 1  | NULL 
                2   | Parent Cat 2  | NULL 
                3   | Child Cat 1   | 2 
                4   | Child Cat 2   | 2 
                5   | Parent Cat 3  | NULL 
                6   | Child Cat 3   | 5
                

                預期結果

                Parent Cat 1
                Parent Cat 2
                    Child Cat 1
                    Child Cat 2
                Parent Cat 3
                    Child Cat 3
                

                viewComposerServiceProvider.php

                public function boot()
                {
                       $this->composeTopCategoryNavigation();
                       $this->composeSubCategoryNavigation();
                }
                
                private function composeTopCategoryNavigation()
                {
                    view()->composer('partials.header', function($view)
                        {
                            $view->with('top_cats', Category::whereNull('cat_parent_id')->orderBy('cat_name', 'asc')->get());
                        });
                }
                
                private function composeSubCategoryNavigation()
                {
                        view()->composer('partials.header', function($view)
                        {
                            $view->with('sub_cats', Category::whereNotNull('cat_parent_id')->orderBy('cat_name', 'asc')->get());
                        });
                }
                

                標題視圖

                <ul>
                @foreach ($top_cats as $top_cat)
                  <?php $top_cat_slug = str_slug( $top_cat->cat_name, "-"); ?>
                  <li>{{ $top_cat->cat_name }}
                    @foreach ($sub_cats as $sub_cat)
                            @if ( $sub_cat->cat_parent_id === $top_cat->id )
                                <ul>
                                  <li{{ $sub_cat->cat_name }}</li>
                                </ul>
                                @endif
                        @endforeach
                   </li>
                @endforeach
                </ul>
                

                推薦答案

                首先,你的做法是低效的.您的視圖遍歷每個父類別的所有子類別.如果您正確定義關系并利用 Eloquent 的預先加載,您可以更輕松地獲取和訪問子類別.

                First of all, what you are doing is inefficient. Your view iterates through all subcategories for every parent category. If you defined relations properly and made use of Eloquent's eager loading, you could fetch and access child categories in easier way.

                從定義關系開始:

                class Category extends Model {
                  //each category might have one parent
                  public function parent() {
                    return $this->belongsToOne(static::class, 'cat_parent_id');
                  }
                
                  //each category might have multiple children
                  public function children() {
                    return $this->hasMany(static::class, 'cat_parent_id')->orderBy('cat_name', 'asc');
                  }
                }
                

                一旦您正確定義了關系,您就可以獲取整個類別樹,如下所示:

                Once you have the relations defined properly, you can fetch whole category tree like below:

                view()->composer('partials.header', function($view) {
                  $view->with('categories', Category::with('children')->whereNull('cat_parent_id')->orderBy('cat_name', 'asc')->get());
                });
                

                不需要第二個作曲家,因為父類別已經包含子類別.

                The second composer won't be needed, as parent categories already contain children.

                現在,您只需要在視圖中顯示類別:

                Now, you only need to display the categories in your view:

                <ul>
                  @foreach ($categories as $parent)
                    <li>{{ $parent->cat_name }}
                      @if ($parent->children->count())
                        <ul>
                          @foreach ($parent->children as $child)
                            <li>{{ $child->cat_name }}</li>
                          @endforeach
                        </ul>
                      @endif
                    </li>
                  @endforeach
                </ul>
                

                這篇關于Laravel 在同一個表中返回父母的孩子的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                Deadlock exception code for PHP, MySQL PDOException?(PHP、MySQL PDOException 的死鎖異常代碼?)
                PHP PDO MySQL scrollable cursor doesn#39;t work(PHP PDO MySQL 可滾動游標不起作用)
                PHP PDO ODBC connection(PHP PDO ODBC 連接)
                Using PDO::FETCH_CLASS with Magic Methods(使用 PDO::FETCH_CLASS 和魔術方法)
                php pdo get only one value from mysql; value that equals to variable(php pdo 只從 mysql 獲取一個值;等于變量的值)
                MSSQL PDO could not find driver(MSSQL PDO 找不到驅動程序)
                  <tbody id='1Qdav'></tbody>

              2. <small id='1Qdav'></small><noframes id='1Qdav'>

                  <legend id='1Qdav'><style id='1Qdav'><dir id='1Qdav'><q id='1Qdav'></q></dir></style></legend>
                1. <tfoot id='1Qdav'></tfoot>
                      <bdo id='1Qdav'></bdo><ul id='1Qdav'></ul>

                        • <i id='1Qdav'><tr id='1Qdav'><dt id='1Qdav'><q id='1Qdav'><span id='1Qdav'><b id='1Qdav'><form id='1Qdav'><ins id='1Qdav'></ins><ul id='1Qdav'></ul><sub id='1Qdav'></sub></form><legend id='1Qdav'></legend><bdo id='1Qdav'><pre id='1Qdav'><center id='1Qdav'></center></pre></bdo></b><th id='1Qdav'></th></span></q></dt></tr></i><div class="35mavmh" id='1Qdav'><tfoot id='1Qdav'></tfoot><dl id='1Qdav'><fieldset id='1Qdav'></fieldset></dl></div>
                          主站蜘蛛池模板: 衬四氟_衬氟储罐_四氟储罐-无锡市氟瑞特防腐科技有限公司 | 深圳市人通智能科技有限公司 | 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 电主轴,车床电磨头,变频制动电机-博山鸿达特种电机 | 宁波普瑞思邻苯二甲酸盐检测仪,ROHS2.0检测设备,ROHS2.0测试仪厂家 | 房车价格_依维柯/大通/东风御风/福特全顺/江铃图片_云梯搬家车厂家-程力专用汽车股份有限公司 | 中红外QCL激光器-其他连续-半导体连续激光器-筱晓光子 | 北京翻译公司-专业合同翻译-医学标书翻译收费标准-慕迪灵 | 数年网路-免费在线工具您的在线工具箱-shuyear.com | 网架支座@球铰支座@钢结构支座@成品支座厂家@万向滑动支座_桥兴工程橡胶有限公司 | 上海赞永| 宝鸡市人民医院| 活性炭厂家-蜂窝活性炭-粉状/柱状/果壳/椰壳活性炭-大千净化-活性炭 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 广州展台特装搭建商|特装展位设计搭建|展会特装搭建|特装展台制作设计|展览特装公司 | 涡轮流量计_LWGY智能气体液体电池供电计量表-金湖凯铭仪表有限公司 | BOE画框屏-触摸一体机-触控查询一体机-触摸屏一体机价格-厂家直销-触发电子 | 湖南长沙商标注册专利申请,长沙公司注册代理记账首选美创! | 粉末冶金注射成型厂家|MIM厂家|粉末冶金齿轮|MIM零件-深圳市新泰兴精密科技 | 铝机箱_铝外壳加工_铝外壳厂家_CNC散热器加工-惠州市铂源五金制品有限公司 | 999范文网_优质范文下载写作帮手 | 板式换热器_板式换热器价格_管式换热器厂家-青岛康景辉 | 河南橡胶接头厂家,河南波纹补偿器厂家,河南可曲挠橡胶软连接,河南套筒补偿器厂家-河南正大阀门 | 好看的韩国漫画_韩漫在线免费阅读-汗汗漫画 | 焊接减速机箱体,减速机箱体加工-淄博博山泽坤机械厂 | 工装定制/做厂家/公司_工装订做/制价格/费用-北京圣达信工装 | Eiafans.com_环评爱好者 环评网|环评论坛|环评报告公示网|竣工环保验收公示网|环保验收报告公示网|环保自主验收公示|环评公示网|环保公示网|注册环评工程师|环境影响评价|环评师|规划环评|环评报告|环评考试网|环评论坛 - Powered by Discuz! | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 | RO反渗透设备_厂家_价格_河南郑州江宇环保科技有限公司 | Copeland/谷轮压缩机,谷轮半封闭压缩机,谷轮涡旋压缩机,型号规格,技术参数,尺寸图片,价格经销商 CTP磁天平|小电容测量仪|阴阳极极化_双液系沸点测定仪|dsj电渗实验装置-南京桑力电子设备厂 | 急救箱-应急箱-急救包厂家-北京红立方医疗设备有限公司 | 浙江富广阀门有限公司 | 铆钉机|旋铆机|东莞旋铆机厂家|鸿佰专业生产气压/油压/自动铆钉机 | 橡胶膜片,夹布膜片,橡胶隔膜密封,泵阀设备密封膜片-衡水汉丰橡塑科技公司网站 | 长江船运_国内海运_内贸船运_大件海运|运输_船舶运输价格_钢材船运_内河运输_风电甲板船_游艇运输_航运货代电话_上海交航船运 | 柔性输送线|柔性链板|齿形链-上海赫勒输送设备有限公司首页[输送机] | 尾轮组_头轮组_矿用刮板_厢式刮板机_铸石刮板机厂家-双驰机械 | 水环真空泵厂家,2bv真空泵,2be真空泵-淄博真空设备厂 | 振动时效_振动时效仪_超声波冲击设备-济南驰奥机电设备有限公司 北京宣传片拍摄_产品宣传片拍摄_宣传片制作公司-现像传媒 | 自清洗过滤器-全自动自清洗过反冲洗过滤器 - 中乂(北京)科技有限公司 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 |