Несколько методов для одного экземпляра класса.
Добавлено: 2014.03.25, 13:48
Столкнулся со следующей непоняткой. Имеется код, такого вида:
Контроллер
Условия поиска в модели:
После выполнения [1], последующие методы экземпляра модели выполняются некорректно, то есть в [2] получается статичное значение у $SearchResult['CountProfiles']. Если поменять строки местами, [2] => [1], то снова будет корректно выполняться метод, следующим первый. Пробовал ввести переменные и присвоить экземпляр класса с измененными условиями поиска, но результата не дает.
Вопрос: Каким образом можно добиться корректного выполнения методов [1] и [2]?
Контроллер
Код: Выделить всё
private function search() {
$Profiles = new Profile();
/*
* тут различные условия поиска
*/
if ($option_noimage) {
$Profiles->scSkipNoImage();
}
$SearchResult['Profiles'] = $Profiles->findAll(array('limit' =>15)); // [1]
$SearchResult['CountProfiles'] = $Profiles->count(); // [2]
return $SearchResult;
}
Код: Выделить всё
public function scSkipNoImage() {
$this->getDbCriteria()->mergeWith(array(
'condition' => 'pic IS NOT NULL',
));
return $this;
}
Вопрос: Каким образом можно добиться корректного выполнения методов [1] и [2]?