如何在CGridview中添加图像

如何在CGridview中添加图像,gridview,yii,Gridview,Yii,这是表的gridview的索引: $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'tblvehicleimagegrid', 'dataProvider'=>$model->search(), 'filter'=>$model, 'columns'=>array( 'serial_no', array( 'name' =>'image',

这是表的gridview的索引:

$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'tblvehicleimagegrid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(

    'serial_no',
    array(
      'name'  =>'image',
        'type'=>'raw',
        'value'=> CHtml::image(Yii::getPathOfAlias('webroot')."/images/originals/images.jpg"),

    ),

    'line_no',
..........
.........
这是一个错误


在这方面需要一些帮助。

像这样在值中添加单引号

'value'=> 
'CHtml::image(Yii::getPathOfAlias("webroot")."/images/originals/images.jpg")',
看一看

如果您像bettor在Yii论坛上那样编写代码:

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider,
    'columns'=>array(

            array(
              'name'=>'Flag',
                'type'=>'image',
                'value'=>'CHtml::image("images/flags/".$data->country.".gif", "country")',
            ),

    ),
));
然后,您将得到以下结果:

<img alt="" src="<img src="images/flags/England.gif" alt="country" />"/>
“/>
注意不兼容的元素

换句话说,您需要将列声明中的“type”设置为“html”,这样CGridView就知道查找html,这就是CHTML::image将给您的

编辑:


我知道Yii文档可能有点不清楚,但是如果你看一下代码,它通常是有意义的。在这种情况下,Yii文档确实告诉我们它返回了一个图像标记,特别是。

hm…我完全删除了“CHtml::image”部分;它现在可以工作了。不过,Thanx作为指导原则。。只有当我知道如何使用CHtml::image解决它时,它才可以e是一个补充。同样重要的是在行的周围添加一个引号,就像@naveen goyal提到的那样