我在cakefp分页中遇到问题。在我深入之前,我想显示一些我在控制器中所做的代码
$this->paginate = array(
'joins' => array(
array(
'table' => 'job_posting_lists',
'conditions'=> array('job_posting_lists.firm_id')),
array(
'table' => 'firmsdetails',
'alias' => 'st',
'conditions'=> array('st.id')),
),
'conditions' =>array('job_posting_lists.select_industry'=>$id,'job_posting_lists.verify'=>1),
'fields' => array('job_posting_lists.*','st.*'),
'limit' => 3,
'contain' => array('job_posting_lists'));
$ListjobBycategories = $this->paginate();
echo "<pre>";print_r($ListjobBycategories); die;
$this->set('jobbycat',$ListjobBycategories);
ListjobBycategories中的结果是正确的,但它返回了更多关于1230的数据,在我的job_posting_datas中只有5行,下一页返回的结果与我所做的相同
尝试此代码,根据您的代码进行适当的更改,
$this->paginate = array(
'joins' => array(
array(
'table' => 'tbl1',
'alias' => 'alias1',
'conditions'=> array('')
),array(
'table' => 'tbl2',
'alias' => 'alias2',
'conditions'=> array('')
),array(
'table' => 'tbl3',
'alias' => 'alias3',
'type' => 'left',
'conditions'=> array('')
),
),
'conditions' => $displayConditions, // Your query conditions
'fields' => $this->displayFields, // Your field set which you want to retrieve from tables
'limit' => $show_page,// number of records you wish to retrieve in each page
'group' => '', // field by which wish to grouping your data set
'contain' => array(''),//It will contain name of all the Models which are in Join
);
$ListjobBycategories = $this->paginate(); // Call pagination function, it will retrieve all records
如果有任何疑问,请告诉我。