如何在GridView Yii2中设置默认值

如何在GridView Yii2中设置默认值,gridview,yii2,yii2-advanced-app,Gridview,Yii2,Yii2 Advanced App,我是Yii2的新手,我需要一些关于GridView Yii2的帮助 我试着在这里做一个条件: <?= GridView::widget([ 'dataProvider' => $dataProvider, 'filterModel' => $searchModel, 'columns' => [ ['class' => 'yii\grid\SerialColumn'], /*........Other

我是Yii2的新手,我需要一些关于GridView Yii2的帮助

我试着在这里做一个条件:

   <?=
GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        ['class' => 'yii\grid\SerialColumn'],
         /*........Other attribute here..........*/
         [
            'attribute' => 'status_dosen',
            'value' => "status_dosen"==1 ? "Approved": "status_dosen"==NULL ? "Pending": "Rejected",
        ],
        [
            'attribute' => 'status_asrama',
            'value' => "status_dosen"==1 ? "Approved": "status_dosen"==NULL ? "Pending": "Rejected",
        ],

        ],
]);

?>

但我当时犯了一个错误:

未知属性–yii\base\UnknownPropertyException 获取未知属性:backend\modules\aitk\models\AitkRequest::已拒绝

谁能帮帮我吗。。 如何使用一些条件值设置默认值

感谢您的关注和帮助……)

像这样使用闭包:

GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'columns' => [
            ['class' => 'yii\grid\SerialColumn'],
             /*........Other attribute here..........*/
             [
                'attribute' => 'status_dosen',
                'value' => function ($data){
 return $data->status_dosen==1 ? "Approved": ($data->status_dosen==NULL ? "Pending": "Rejected");
}
            ],

    ]);

编辑:

使用css。加载项html或css文件:

   .table-striped>tbody>tr:nth-child(odd)>td, .table-striped>tbody>tr:nth-child(odd)>th {
      background-color: red;
    }

.table-striped>tbody>tr:nth-child(even)>td, .table-striped>tbody>tr:nth-child(even)>th {
      background-color: green;
    }
请尝试使用以下代码:

'value' => function ($model) {
    return getStatusHtml($model->status);
}
某些功能:

function getStatusHtml($status)
    {
        $text = '';
        if ($status == 1) {
            return '<span class="label label-success>Success</span>';
        } elseif ($status == 2) {
            return '<span class="label label-default>Default</span>';
        } else {
            return '-';
        }
    }
函数getStatusHtml($status) { $text=''; 如果($status==1){ 返回“默认值”; }否则{ 返回“-”; } }
这是工作,但你能帮我更多吗??我想,如果它被接受,它的颜色是绿色,其他红色??我怎样才能添加一些css?我想,如果它被接受,它的颜色是绿色的,其他红色的??我怎样才能添加一些css?我仍然不明白如何使用那个css,我应该把它们放在哪里?很好用,谢谢