2013-04-15 30 views
0

如何在我的数据提供者值中设置默认值$data->pic==""。数据集PIC为na.jpg如何在CGridView中设置defalut值

widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$dataProvider, 
    'columns'=>array(
    array(
     'type'=>'raw', 
     'name'=>'pic', 
     'value'=>'CHtml::image("http://localhost/studentpics/".$data->pic)', 
    ), 
)); 

回答

1
widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$dataProvider, 
'columns'=>array(
array(
        'name'=>'your Image URL', 
        'type'=>'image', 
        'htmlOptions'=>array('width'=>'30px','height'=>'30px'), 
      ), 
)); 
1

value被评价为一个PHP表达式,它是确定使用条件在它

'value'=>'CHtml::image(($data->pic)?"http://localhost/studentpics/".$data->pic:"default_image_url")', 

P.S这是一个坏主意,使用绝对URL无处不在。

0

我认为你可以重写的CActiveRecord

的一个afterFind方法
protected function afterFind() 
{ 
if($this->pic ===null) 
    { 
    $this->pic = na.jpg; 
    } 
    parent::afterFind(); 
}