我的模特之间有以下关系
Program hasMany Classroom
Classroom belongsTo Program
我要实现的目的是显示按计划分组的所有教室,例如:
程序1
-教室1
-教室2
-教室3
程序2
-教室1
-教室2 ...等等
我在ClassroomsController中的索引操作:
function index() {
$this->Access->grantAdmin();
$this->Classroom->recursive = 1;
$this->set('classrooms', $this->paginate());
}
我试图用这个:
var $paginate = array(
'group' => 'program_id'
);
但是它没有按我预期的那样工作。有任何想法吗?谢谢
最佳答案
尝试添加:
var $actsAs = array('Containable');
程序模型。然后在控制器中:
$programs = $this->Classroom->Program->find('all', array(
'contain' => array(
'Classroom',
),
));
$this->set(compact('programs'));
这将返回您要查找的层次结构中的数据。有关更多详细信息,请参见Containable behaviour文档。请注意,如果使用Containable,则不需要
$this->Classroom->recursive
语句。您自己的代码示例显示您正在使用分页。通过环顾文档,将可容纳性和分页放在一起应该是相当容易的。
关于php - CakePHP-列出按program_id分组的条目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7706530/