В Yii 1.1, если вы хотите заполнить ячейку CGridView несколькими значениями или объединить несколько ячеек одного столбца в одну ячейку другого, вам потребуется создать пользовательскую колонку в CGridView и настроить ее соответствующим образом.
Для начала, вы можете создать класс-наследник CDataColumn и переопределить метод renderDataCell(). В этом методе вы можете определить, какие данные будут отображаться в ячейке и как они будут отформатированы.
Пример кода для создания пользовательской колонки в CGridView:
class CustomColumn extends CDataColumn { protected function renderDataCellContent($row, $data) { // получаем данные, которые нужно отобразить в ячейке $value1 = $data->getAttribute('attribute1'); $value2 = $data->getAttribute('attribute2'); // объединяем данные в одну строку $content = $value1 . ' ' . $value2; echo $content; } }
Затем вы можете использовать эту пользовательскую колонку в вашем CGridView:
$this->widget('zii.widgets.grid.CGridView', array( 'dataProvider'=>$dataProvider, 'columns'=>array( 'id', 'name', array( 'class' => 'CustomColumn', 'header' => 'Custom Column', ), // другие столбцы ), ));
В этом примере я создал класс CustomColumn, который наследуется от CDataColumn. В методе renderDataCellContent() я получаю данные, которые нужно отобразить в ячейке, объединяю их в одну строку и отображаю эту строку.
Вы можете изменять логику в методе renderDataCellContent() в соответствии со своими требованиями, чтобы добиться нужного вам результата.