Подскажите, пожалуйста.
Есть форма фильтрации, где пользователь выберает нужные ему критерии и нажимает поиск.
Данные выбираются из многих таблиц связанных между собой.
С помощью CDbCriteria формируется запрос из множеством условий, к примеру:
Код: Выделить всё
$criteria = new CDbCriteria;
// Загружаем связанные модели
$criteria->with = array(
'house_relation',
'sanitare_relation',
'street_relation',
'region_relation',
'district_relation',
'underground_relation',
'type_house_relation',
'type_area_relation',
'plan_relation',
);
$cond = ' ';
$cond .= " AND t.price_of_m2 BETWEEN ".$min_price." AND ".$max_price."";
$cond .= " AND t.flour IN (".$list_rooms.")";
и т.д.
Код: Выделить всё
$criteria->condition = $cond;
$model = new CActiveDataProvider('Apartament',array(
'criteria'=>$criteria,
'pagination' => array(
'pageSize'=>3,
),
Код: Выделить всё
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$model,
'itemView'=>'_view',
'emptyText'=>'Результат не найден. Измените критерий поиска.',
'sortableAttributes'=>array('id','t.price_of_m2'),
));
В чем проблема? Как сделать так что при пролистывании со страницы на страницу фильтры (условия выборки) не сбрасивались.
Что интиресно, что когда сразу открывается страница пейджер отображает правильное количество страниц, а вот при начале пролистывания - все сбрасывается!
Спасибо за любой совет!!!