doujianmin6527 2016-02-12 08:22
浏览 21
已采纳

cakephp:我如何显示每个类别的计数?

here is my tables

brands_tbls

  • id 1 2 3 4
  • name Levi's Lee Woodland Spyakr

product_tbls

  • id
  • brands_tbls_id
  • product_description
  • name
  • price

I m displaying my brands and also tried for product count by using this code.

PublicController.php

public function example()
{
    $this->loadModel("Brand");
    $data = $this->Brand->find('all');
    $this->set('brand', $data);
    $this->layout="display";


    $this->loadModel("Product");
    $data = $this->Product->find('count', array('conditions' =>
                                  array('brands_tbls_id' => '1')));
    $this->set('product1', $data);
    $this->layout="display";
}

below is my view file

example.ctp

<?php foreach($brand as $data) : ?>
  <?php foreach($data as $row) : ?>
   <li>
     <a href="#">
        <span class="pull-right">(<?php echo $product1;//--count   ?>)
        </span><?php echo $row["name"];//--brands   ?>
     </a>
   </li>
   <?php endforeach; ?>
<?php endforeach; ?>

by doing this i can get count of product from product_tbls where brands_tbls_id = 1

so it will display same product count for all brands.how can i get product count for all brands?

  • 写回答

2条回答 默认 最新

  • dongxiatuo9827 2016-02-12 12:43
    关注

    maybe what you want to achieve is to group your products by brand

    $data = $this->Product->find(
       'all', 
        array(
            'fields' => array('COUNT(*)'),
            'group' => 'brands_tbls_id',
            'contain' => array('Brand')
       )
    );
    

    so you can loop through $data

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥35 平滑拟合曲线该如何生成
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了
  • ¥15 链式存储应该如何解决
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站