Fork me on GitHub

Image Column для CGridView

Позволяет отображать изображения в ячейках CGridView.

Установка

Распаковать в protected/extensions.

В config/main.php добавить:

'import'=>array(
    'ext.yiiext.zii.widgets.grid.imageColumn.EImageColumn',
),

Пример использования

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'filter'=>$model,
    'columns'=>array(
        'title:html',
        'description:html',
        array(
            'class' => 'EImageColumn',
            // См. ниже.
            'imagePathExpression' => '/images/.$data->imagePath',
            // Текст, отображаемый, если в ячейке пусто.
            // Можно не задавать.
            'emptyText' => '',
            // Настройки тега img
            'imageOptions' => array(
                'alt' => 'no',
                'width' => 120,
                'height' => 120,
            ),
        ),
        array(
            'class'=>'CButtonColumn',
        ),
    ),
));

imagePathExpression — выражение PHP, которое вычислятся для каждой ячейки и используется как путь к изображению. В данном выражении можно использовать:

  • $row — порядковый номер строки, начинающийся с нуля.
  • $data — модель, соответствующая текущей строке.
  • $this — экземпляр EImageColumn.

Changelog

1.1 [-] Delete $witdh, $height. Use $imageOptions['width'] and $imageOptions['height']. [+] Add $imageOptions - the HTML options for the image tag. [+] Add default css-class for column. [*] Now there is no need to import CGridColumn manually.

1.0 [+] Initial public release.

allows to render images inside zii CGridView.

Documentation

Downloads (Tags)

Resources