したがって、ビューが 1 つあり、同じモデルで条件が異なる 2 つのテーブルのページネーションを行う必要があります。例えば:
Task Model --> 1st pagination --just paginate task assigned to me
--> 2nd pagination --paginate task created by me
とにかくこれを行うことはありますか?
public function dashboard() {
$this->layout = 'user';
$limit = 5;
//debug($this->Session->read('Auth.User.id'));
//debug($this->Session->read('Auth.User.group_id'));
//My Task Pagination
$this->paginate = array(
'Project' => array(
'limit' => $limit,
//'contain' => array('ProjectReminderUser.user_id =' . $this->Session->read('Auth.User.id')),
'conditions' => array(
'User.group_id' => $this->Session->read('Auth.User.group_id'),
//'ProjectReminderUser.user_id' => $this->Session->read('Auth.User.id'),
),
)
);
$this->set('myTasks', $this->paginate('Project'));
//debug($this->paginate('Project'));
//Group Task Pagination
$this->paginate = array(
'Project' => array(
'limit' => $limit,
//'contain' => array('ProjectReminderUser.user_id =' . $this->Session->read('Auth.User.id')),
'conditions' => array(
'User.group_id' => $this->Session->read('Auth.User.group_id'),
//'ProjectReminderUser.user_id' => $this->Session->read('Auth.User.id'),
),
)
);
$this->set('groupTasks', $this->paginate('Project'));
//debug($this->paginate('Project'));
}
このコードはまだ条件を区別していません。しかし、私はこれをどのように行うことができるか疑問に思っていました。現在のコードでは、ページを並べ替えたり移動したりするたびに、同じモデルのために両方のテーブルに対して同じことが行われるためです。