如何在CGridview中添加图像
这是表的gridview的索引:如何在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',
$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提到的那样