Как добавить новое поле в CGridView?

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Аватара пользователя
alex_90
Сообщения: 41
Зарегистрирован: 2012.10.03, 09:56

Как добавить новое поле в CGridView?

Сообщение alex_90 »

Подскажите, пожалуйста. Как добавить свое поле в CGridView? В модели 8 полей, мне нужно чтобы оставалось ровно одно поле для поиска для вычисления SQL-запроса и затем выводился результат. Как это можно осуществить?
Плюясь и чертыхаясь, коты переплывали реки лавы на заре мироздания.
Skiller
Сообщения: 627
Зарегистрирован: 2011.11.27, 00:21

Re: Как добавить новое поле в CGridView?

Сообщение Skiller »

CGridView.columns property
Аватара пользователя
alex_90
Сообщения: 41
Зарегистрирован: 2012.10.03, 09:56

Re: Как добавить новое поле в CGridView?

Сообщение alex_90 »

Skiller писал(а):CGridView.columns property
А можно по-подробнее с этого места.
Плюясь и чертыхаясь, коты переплывали реки лавы на заре мироздания.
Аватара пользователя
demisang
Сообщения: 159
Зарегистрирован: 2012.10.27, 15:03
Контактная информация:

Re: Как добавить новое поле в CGridView?

Сообщение demisang »

Вот пример построения грида

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

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(
        'title',          // display the 'title' attribute
        'category.name',  // display the 'name' attribute of the 'category' relation
        'content:html',   // display the 'content' attribute as purified HTML
        array(            // display 'create_time' using an expression
            'name'=>'create_time',
            'value'=>'date("M j, Y", $data->create_time)',
        ),
        array(            // display 'author.username' using an expression
            'name'=>'authorName',
            'value'=>'CHtml::encode($data->author->username)',
        ),
        array(            // display a column with "view", "update" and "delete" buttons
            'class'=>'CButtonColumn',
        ),
    ),
));
Аватара пользователя
alex_90
Сообщения: 41
Зарегистрирован: 2012.10.03, 09:56

Re: Как добавить новое поле в CGridView?

Сообщение alex_90 »

А что должно лежать в dataProvider? Нужно чтобы по новому полю велся поиск.

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

$sql = "SELECT * FROM `kladr WHERE ...`";
$DataProvider = new CSqlDataProvider($sql);
Это я уже сделал. А вот что дальше -- не знаю :-(
Плюясь и чертыхаясь, коты переплывали реки лавы на заре мироздания.
Ответить