我正在使用 cakephp 开发 CMS,我有 2 个表需要通过一些参数进行过滤,并且为了优化我必须从“hasMany”模型开始进行查询,简单的方法是在“belongsTo”模型上进行。
class Client extends AppModel {
public $actsAs = array('Containable');
public $hasMany = array('Projects');
}
class Project extends AppModel {
public $actsAs = array('Containable');
public $belongsTo = array('Client');
}
我在 $conditions 数组中有 where 条件。
$this->paginate = array(
'Client' => array(
'limit' => 20,
'conditions' => $conditions,
'contain' => array(
'Project' => array(
//'limit' => 20
)
)
)
);
$this->set('clients', $this->paginate('Client'));
通过这种方式,我得到了 20 个客户和每个客户内的所有项目。如果我取消注释该行,我会在 20 个客户中的每个客户中获得 20 个项目。
我一共想要 20 个项目,不管有多少客户(最多 20 个)。
谁能帮我?
提前致谢。