0

に一致するアイテムを含むdbテーブルがありますgroup_id。これらのアイテムを次のようなページ付けで表示したいと思います。

codeset_id - itemsInGroupCount
group1     -        3
group2     -        6

これどうやってするの?個別のグループがありますが、カウントを取得するにはどうすればよいですか?

私のコントローラー:

public function admin_index() {
    $this->Codesetitem->recursive = 0;
    $this->paginate = array(
        'Codesetitem' => array(
            'group' => 'codeset_id',
            'order' => array('codeset_id' => 'asc')
        )            
    );
    $this->set('codesetitems', $this->paginate());
}
4

1 に答える 1

2

以下は私の側でうまくいくようです:

public $components = array('Paginator');

public function index() {
  $this->Paginator->settings = array(
    'fields' => array('Item.group_id', 'COUNT(*) AS "Item.group_count"'),
    'limit' => 3,
    'group' => 'group_id'
  );

  $this->set('items', $this->Paginator->paginate('Item'));
}

キーに追加COUNT(*) AS "Foo.bar"しただけです。fields

于 2013-03-10T00:44:05.233 に答える