CGridView

Предварительное обсуждение найденных ошибок перед отправкой их авторам фреймворка, а также внесение новых предложений.
Ответить
Аватара пользователя
kosenka
Сообщения: 677
Зарегистрирован: 2009.09.26, 12:41
Откуда: москва
Контактная информация:

CGridView

Сообщение kosenka »

Использую Yii Framework 1.1.1 r1702 и столкнулся, видимо, багом CGridView.

В чем бага:
1) если описывать колонку "как class CLinkColumn", то заголовок колонки невозможно сделать "сортируемым" (при клике на заголовок, таблица пересортировывается)
2) не выбирается значение из public function attributeLabels() в модели для поля txt_title

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

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'template'=>"{summary}\n{pager}\n{items}\n{pager}",//шаблон вывода грида
    'pager'=>array('maxButtonCount'=>4),//кол-во видимых номеров страниц у pager'a
    'columns'=>array(
        array( // показываем колонку txt_postdat            
            'name'=>'txt_postdat',
            'value'=>'$data->txt_postdat',
        ),
        array('class'=>'CLinkColumn', // выводим колонку txt_title "как class CLinkColumn"
              'header'=>'txt_title',// БАГА вот тут 
              'labelExpression'=>'$data->txt_title',
              'urlExpression'=>'Yii::app()->createUrl("items/show",array("txt_title_seo"=>$data->txt_title_seo))',//при выводе в браузере у нас это будет ссылкой
              'linkHtmlOptions'=>array('target'=>'_blank'),
             ),
             'txt_viewed',
        array(            // display a column with "update" and "delete" buttons
            'class'=>'CButtonColumn',
            'template'=>'{update} {delete}',//шаблон вывода "админских функций"
            'header'=>'&nbsp;',
            'buttons'=>array(
                             'update' => array(
                                            'label'=>'<img src="'.Yii::app()->theme->baseUrl.'/img/pencil.png" alt="edit" title="edit">',
                                            'url'=>'Yii::app()->createUrl("items/edit",array("id"=>$data->id))',
                                            ),
                             'delete' => array(
                                            'label'=>'<img src="'.Yii::app()->theme->baseUrl.'/img/minus.png" alt="delete" title="delete">',
                                            'url'=>'Yii::app()->createUrl("items/delete"),array("id"=>$data->id))',

                                            ),
                            ),
))));
?>
Если кто-то уже пользовался CGridView, подскажите, может я не прав?
Ответить