2012-02-16 2 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()); 

Это должно показать все неполные рабочие места для текущего пользователя под переменная $ jobs (при доступе из представления). Тем не менее, я получаю все неполные рабочие места для каждого пользователя.

$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

А, спасибо за это. В тот момент, когда ты это упомянул, все это возвращалось ко мне, ха-ха! Спасатель! –

Смежные вопросы