CGridView, фильтр и переходы по страницам

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Werewolf
Сообщения: 98
Зарегистрирован: 2010.02.27, 14:37
Контактная информация:

CGridView, фильтр и переходы по страницам

Сообщение Werewolf »

Есть фильтр в выпадающем списке, когда его применяешь один раз и переходишь по страницам все нормально. Меняешь на что-то другое, не меняется и урл становится такой:

Код: Выделить всё

http://site.ru/admin/prices/all/ajax/price-grid/Price[id]//Price[price]//Price[price_add]//Price[package_id]//Price[layout_id]//Price[room_id]//Price[hotel_id]/13/Price[date_start]//Price[date_end]//Price_page/3?ajax=price-grid&Price%5Bid%5D=&Price%5Bprice%5D=&Price%5Bprice_add%5D=&Price%5Bpackage_id%5D=&Price%5Blayout_id%5D=&Price%5Broom_id%5D=&Price%5Bhotel_id%5D=6&Price%5Bdate_start%5D=&Price%5Bdate_end%5D=&Price_page=1  

Видно что дублируются параметры.
main/config.php

Код: Выделить всё

// uncomment the following to enable URLs in path-format
        'urlManager'=>array(
            'urlFormat'=>'path',
            'showScriptName' => false,
            'rules'=>array(
                '<controller:\w+>/<id:\d+>'=>'<controller>/view',
                '<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
                '<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
            ),
        ),
Метод контроллера

Код: Выделить всё

    public function actionAll()
    {
            $this->layout = '//layouts/column1';
        $model=new Price('search');
        $model->unsetAttributes();  // clear any default values
        if(isset($_GET['Price']))
            $model->attributes=$_GET['Price'];

                $hotelsFilter = CHtml::listData(Yii::app()->db->createCommand()->select('id, name')->from('hotels')->order('name ASC')->where('deleted <> 1')->queryAll(),'id','name');
        $this->render('all',array(
            'model'=>$model,
                    'hotelsFilter' => $hotelsFilter,
        ));
    }
Yii 1.1.10

Получается, что переход на страницу использует переписанные урлы, а фильтр шлет параметры в query string.
Werewolf
Сообщения: 98
Зарегистрирован: 2010.02.27, 14:37
Контактная информация:

Re: CGridView, фильтр и переходы по страницам

Сообщение Werewolf »

Похоже на баг фреймворка.
Аватара пользователя
yii
Сообщения: 122
Зарегистрирован: 2010.04.29, 10:40

Re: CGridView, фильтр и переходы по страницам

Сообщение yii »

Та же самая проблема. Баг уже оформили?
Ответить