[英]CakePHP - listing entries grouped by program_id
我的模型之間有以下關系
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行為文檔。 請注意,如果使用Containable,則不需要$this->Classroom->recursive
語句。
您自己的代碼示例顯示您正在使用分頁。 通過查看文檔,將可包含和分頁放在一起應該相當容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.