在admin.php中,我有一个gridview,我在其中创建了一个下拉列表。我有以下数值,即0->没有活动 1→待定 2→批准 3→被拒绝。 如何在下面的代码中指定并在gridview单元格中显示相应的数值。
array(
'name' => 'Test',
'value' =>?
'visible' => ($approval=="1")?true:false,
'filter' => array('0' => 'No Activity', '1' => 'Pending','2' => 'Approved', '3' => 'Rejected',''=>'All'),
// 'headerHtmlOptions' => array('style'=>'text-align:center; vertical-align: middle;font-size: 15px !important;'),
'htmlOptions' => array('style' => 'width: 500px;'),
),
答案 0 :(得分:1)
使用控制器上的下拉列表值声明数组:
$list = array('0' => 'No Activity', '1' => 'Pending','2' => 'Approved', '3' => 'Rejected', ''=>'All');
并将其发送到视图。
在CgridView中使用这个数组$ list如下:
array( // display 'author.username' using an expression
'name'=>'Test',
'value'=>function ($data, $row) use ($list){ return $data->field? $list[$data->field] : 'All'; },
'visible' => ($approval=="1")? true : false,
// 'headerHtmlOptions' => array('style'=>'text-align:center; vertical-align: middle;font-size: 15px !important;'),
'htmlOptions' => array('style' => 'width: 500px;'),
),
其中$ data->字段是行字段名称。