【发布时间】:2012-06-15 10:22:08
【问题描述】:
我是 Yii 的新手,对不起,如果我的问题可能很愚蠢,我正在使用 CGridView 在表格中显示我的数据库的一些字段:
<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>
<div class="search-form" style="display:none">
<?php $this->renderPartial('_search',array(
'model'=>$model,
)); ?>
</div><!-- search-form -->
<?php
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'show-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'id',
'title',
'brief',
'tbl_season_id',
'on_season',
array(
'name'=>'status',
'value'=>'Lookup::item("NewsStatus",$data->status)',
'filter'=> Lookup::items('NewsStatus'),
),
array(
'class'=>'CButtonColumn',
),
),
)); ?>
</div>
我想替换一些显示的值,例如,on_season 字段是二进制的,在表中值是 0 或 1,我想将此值更改为 Yes 和 NO ,
而tbl_season_id是另一个表的外键,我想获取季节的名称并将其代替用户无法理解的id。
【问题讨论】:
-
对于第一个:您必须执行与“状态”列相同的操作。将'type'属性设置为'raw',然后你可以在'value'属性中做任何你需要的事情(例如'$data->on_season?“Yes”:“No”')。第二个:在你的模型中创建一个关系(例如,称为“季节”),然后将关系放在网格列中:“season.name”。
-
成功了,我也可以替换标题值吗?
-
有一个名为 'header' 的属性:P 有关可用属性的更多信息:yiiframework.com/doc/api/1.1/CGridColumn
标签: yii