所以我有这个表单来创建一个工作角色,我需要显示这个工作角色是处于活动状态还是处于Hibernate状态。 我正在使用布尔值0和1来表示Hibernate和活动。 这是我在表单视图(form.php)中的代码。
<?= $form->field($model, 'status')->dropDownList(['1' => 'Active', '0' => 'Dormant'], ['prompt'=>'Select Option']) ?>
在我的模型(application.php)中,我添加了这个函数
public function getStatusLabel()
{
return $this->status ? 'Active' : 'Dormant';
}
然后在index.php视图中添加显示Active/Dormant。
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
[
'attribute' => 'Status',
'value' => 'statusLabel',
],
到目前为止,一切都在起作用。 唯一的问题是,在view.php(查看添加的每个应用程序)中,状态仍然是display 1和0。 如何在view.php中显示活动/Hibernate呢?
您可以将其传递给如下函数:
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],
[
'attribute' => 'Status',
'value' => function ($data) {
return $data->getStatusLabel();
},
],