2012-02-16 66 views
0

在我的作業控制器我有指數()函數在此聲明:CakePHP的模型 - >查找似乎被忽略的條件

$this->Job->find('all', array('conditions' => array('Job.completed' => '0', 'Job.user_id' => $this->Auth->user('id')))); 
$this->set('jobs', $this->paginate()); 

這應顯示爲當前登錄的用戶下的所有未完成的作業$作業變量(從視圖訪問時)。但是,我正在爲每個用戶提供所有不完整的工作。

$this->Auth->user('id'); //returns correct user ID for logged in user 

我錯過了什麼嗎?
我剛剛重新訪問CakePHP幾個月後,我擔心我可能不得不重新學習一些基礎知識。

感謝您的幫助!

回答

3

:)歡迎回到蛋糕

$this->Job->find()會返回一個數組..它不修改分頁。如果你這樣做:

$jobs = $this->Job->find('all', array('conditions' => array('Job.completed' => '0', 'Job.user_id' => $this->Auth->user('id')))); 
pr($jobs); 

,你會看到,條件是正確的..

條件限制添加到分頁必須更改pagination property,是這樣的:

$this->paginate = array(
     'conditions' => array('Job.completed' => '0', 'Job.user_id' => $this->Auth->user('id')), 
     'limit' => 10 
    ); 
$this->set('jobs', $this->paginate()); 

希望這有助於

+0

啊,謝謝你。你提到它的那一刻,它全部衝回我的哈哈!救命稻草! – 2012-02-16 14:53:36