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

<tfoot id='ZCrgB'></tfoot><legend id='ZCrgB'><style id='ZCrgB'><dir id='ZCrgB'><q id='ZCrgB'></q></dir></style></legend>
  • <i id='ZCrgB'><tr id='ZCrgB'><dt id='ZCrgB'><q id='ZCrgB'><span id='ZCrgB'><b id='ZCrgB'><form id='ZCrgB'><ins id='ZCrgB'></ins><ul id='ZCrgB'></ul><sub id='ZCrgB'></sub></form><legend id='ZCrgB'></legend><bdo id='ZCrgB'><pre id='ZCrgB'><center id='ZCrgB'></center></pre></bdo></b><th id='ZCrgB'></th></span></q></dt></tr></i><div class="qugoio0" id='ZCrgB'><tfoot id='ZCrgB'></tfoot><dl id='ZCrgB'><fieldset id='ZCrgB'></fieldset></dl></div>

    1. <small id='ZCrgB'></small><noframes id='ZCrgB'>

        • <bdo id='ZCrgB'></bdo><ul id='ZCrgB'></ul>

      1. Laravel:如何獲得嵌套 hasMany 關(guān)系的平均值 (hasMan

        Laravel: how to get average on nested hasMany relationships (hasManyThrough)(Laravel:如何獲得嵌套 hasMany 關(guān)系的平均值 (hasManyThrough))
        <i id='obW3E'><tr id='obW3E'><dt id='obW3E'><q id='obW3E'><span id='obW3E'><b id='obW3E'><form id='obW3E'><ins id='obW3E'></ins><ul id='obW3E'></ul><sub id='obW3E'></sub></form><legend id='obW3E'></legend><bdo id='obW3E'><pre id='obW3E'><center id='obW3E'></center></pre></bdo></b><th id='obW3E'></th></span></q></dt></tr></i><div class="wcwas0s" id='obW3E'><tfoot id='obW3E'></tfoot><dl id='obW3E'><fieldset id='obW3E'></fieldset></dl></div>

      2. <tfoot id='obW3E'></tfoot>

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

      3. <legend id='obW3E'><style id='obW3E'><dir id='obW3E'><q id='obW3E'></q></dir></style></legend>

                <tbody id='obW3E'></tbody>
              • <bdo id='obW3E'></bdo><ul id='obW3E'></ul>

                  本文介紹了Laravel:如何獲得嵌套 hasMany 關(guān)系的平均值 (hasManyThrough)的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

                  問題描述

                  我有三張桌子:

                  products:   id|name|description|slug|category_id|...
                  reviews:    id|product_id|review_text|name|email|...
                  review_rows id|review_id|criteria|rating
                  

                  review 表存儲(chǔ)了評(píng)論文本、評(píng)論作者,并有一個(gè)外部 product_id 鍵.review_rows 表存儲(chǔ)不同標(biāo)準(zhǔn)的評(píng)分,例如:

                  the review table stores the review text, writer of the review and has a foreign product_id key. The review_rows table stores the ratings for different criteria like:

                  ----------------------------------------
                  | id |  criteria  | rating | review_id |
                  ----------------------------------------
                  |  1 |  price     | 9      | 12        |
                  ----------------------------------------
                  |  2 |  service   | 8      | 12        |
                  ----------------------------------------
                  |  3 |  price     | 6      | 54        |
                  ----------------------------------------
                  |  4 |  service   | 10     | 54        |
                  ----------------------------------------
                  

                  評(píng)論行通過 review_id 外鍵鏈接到評(píng)論表.我已經(jīng)像這樣設(shè)置了我的模型關(guān)系:

                  review rows are linked to the review table with the review_id foreign key. I've set up my model relationships like this:

                  Product   -> hasMany   -> Review
                  Review    -> belongsTo -> Product
                  Review    -> hasMany   -> ReviewRow
                  ReviewRow -> belongsTo -> Review
                  

                  現(xiàn)在我想在我的類別和產(chǎn)品頁面上顯示產(chǎn)品的平均評(píng)分.我怎樣才能做到這一點(diǎn)?

                  Now I would like to display the average rating for a product on my category and product pages. How can I achieve this?

                  我需要對(duì)每條評(píng)論的所有評(píng)論行求和并求平均值,然后對(duì)每條評(píng)論的所有評(píng)論行求和并求平均值,最終得出該產(chǎn)品的總體評(píng)分.這是否可以通過 Eloquent 實(shí)現(xiàn),還是我需要不同的解決方案或不同的數(shù)據(jù)庫設(shè)計(jì)/結(jié)構(gòu)?

                  I need to sum and average all the reviewRows per review and then sum and average all of those for each review to end up with the overall rating for that product. Is this possible via Eloquent or do I need a different solution or a different database design/structure?

                  提前致謝!

                  推薦答案

                  你需要這樣的東西 http://softonsofa.com/tweaking-eloquent-relations-how-to-get-hasmany-relation-count-efficiently/ 僅略微調(diào)整為滿足您的需求:

                  You need something like this http://softonsofa.com/tweaking-eloquent-relations-how-to-get-hasmany-relation-count-efficiently/ only slightly adjusted to match your needs:

                  public function reviewRows()
                  {
                      return $this->hasManyThrough('ReviewRow', 'Review');
                  }
                  
                  public function avgRating()
                  {
                      return $this->reviewRows()
                        ->selectRaw('avg(rating) as aggregate, product_id')
                        ->groupBy('product_id');
                  }
                  
                  public function getAvgRatingAttribute()
                  {
                      if ( ! array_key_exists('avgRating', $this->relations)) {
                         $this->load('avgRating');
                      }
                  
                      $relation = $this->getRelation('avgRating')->first();
                  
                      return ($relation) ? $relation->aggregate : null;
                  }
                  

                  就這么簡單:

                  // eager loading
                  $products = Product::with('avgRating')->get();
                  $products->first()->avgRating; // '82.200' | null
                  
                  // lazy loading via dynamic property
                  $product = Product::first()
                  $product->avgRating; // '82.200' | null
                  

                  這篇關(guān)于Laravel:如何獲得嵌套 hasMany 關(guān)系的平均值 (hasManyThrough)的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

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

                  相關(guān)文檔推薦

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

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

                    • <small id='bYW4E'></small><noframes id='bYW4E'>

                    • <legend id='bYW4E'><style id='bYW4E'><dir id='bYW4E'><q id='bYW4E'></q></dir></style></legend>

                      <tfoot id='bYW4E'></tfoot>

                          • <bdo id='bYW4E'></bdo><ul id='bYW4E'></ul>
                            主站蜘蛛池模板: 制丸机,小型中药制丸机,全自动制丸机价格-甘肃恒跃制药设备有限公司 | 西安微信朋友圈广告投放_微信朋友圈推广_西安度娘网络科技有限公司 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 | 捷码低代码平台 - 3D数字孪生_大数据可视化开发平台「免费体验」 | 礼仪庆典公司,礼仪策划公司,庆典公司,演出公司,演艺公司,年会酒会,生日寿宴,动工仪式,开工仪式,奠基典礼,商务会议,竣工落成,乔迁揭牌,签约启动-东莞市开门红文化传媒有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 活性氧化铝球|氧化铝干燥剂|分子筛干燥剂|氢氧化铝粉-淄博同心材料有限公司 | 复合土工膜厂家|hdpe防渗土工膜|复合防渗土工布|玻璃纤维|双向塑料土工格栅-安徽路建新材料有限公司 | 高防护蠕动泵-多通道灌装系统-高防护蠕动泵-www.bjhuiyufluid.com慧宇伟业(北京)流体设备有限公司 | 西安微信朋友圈广告投放_微信朋友圈推广_西安度娘网络科技有限公司 | 无线讲解器-导游讲解器-自助讲解器-分区讲解系统 品牌生产厂家[鹰米讲解-合肥市徽马信息科技有限公司] | 手机存放柜,超市储物柜,电子储物柜,自动寄存柜,行李寄存柜,自动存包柜,条码存包柜-上海天琪实业有限公司 | 南京试剂|化学试剂|分析试剂|实验试剂|cas号查询-专业60年试剂销售企业 | 步进驱动器「一体化」步进电机品牌厂家-一体式步进驱动 | 科昊仪器超纯水机系统-可成气相液氮罐-美菱超低温冰箱-西安昊兴生物科技有限公司 | 九爱图纸|机械CAD图纸下载交流中心 | 专业广州网站建设,微信小程序开发,一物一码和NFC应用开发、物联网、外贸商城、定制系统和APP开发【致茂网络】 | 培训无忧网-教育培训咨询招生第三方平台 | 企业管理培训,企业培训公开课,企业内训课程,企业培训师 - 名课堂企业管理培训网 | 全自动包装秤_全自动上袋机_全自动套袋机_高位码垛机_全自动包装码垛系统生产线-三维汉界机器(山东)股份有限公司 | 酵素生产厂家_酵素OEM_酵素加盟_酵素ODM_酵素原料厂家_厦门益力康 | 湖南印刷厂|长沙印刷公司|画册印刷|挂历印刷|台历印刷|杂志印刷-乐成印刷 | 药品冷藏箱厂家_低温冰箱_洁净工作台-济南欧莱博电子商务有限公司官网 | 艺术生文化课培训|艺术生文化课辅导冲刺-济南启迪学校 | 企业VI设计_LOGO设计公司_品牌商标设计_【北京美研】 | 六维力传感器_三维力传感器_二维力传感器-南京神源生智能科技有限公司 | 齿辊分级破碎机,高低压压球机,立式双动力磨粉机-郑州长城冶金设备有限公司 | 电脑知识|软件|系统|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网 | 河南档案架,档案密集架,手动密集架,河南密集架批发/报价 | 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 哲力实业_专注汽车涂料汽车漆研发生产_汽车漆|修补油漆品牌厂家 长沙一级消防工程公司_智能化弱电_机电安装_亮化工程专业施工承包_湖南公共安全工程有限公司 | 振动台-振动试验台-振动冲击台-广东剑乔试验设备有限公司 | 压缩空气冷冻式干燥机_吸附式干燥机_吸干机_沪盛冷干机 | 考勤系统_人事考勤管理系统_本地部署BS考勤系统_考勤软件_天时考勤管理专家 | 酒精检测棒,数显温湿度计,酒安酒精测试仪,酒精检测仪,呼气式酒精检测仪-郑州欧诺仪器有限公司 | 布袋除尘器-单机除尘器-脉冲除尘器-泊头市兴天环保设备有限公司 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 浙江美尔凯特智能厨卫股份有限公司 | 广西资质代办_建筑资质代办_南宁资质代办理_新办、增项、升级-正明集团 | 杜甫仪器官网|实验室平行反应器|升降水浴锅|台式低温循环泵 | 在线PH计-氧化锆分析仪-在线浊度仪-在线溶氧仪- 无锡朝达 | 蒸压釜_蒸养釜_蒸压釜厂家-山东鑫泰鑫智能装备有限公司 |