如何更改 yii2 DetailView 小部件中的一个属性显示?
How to change one attribute display in yii2 DetailView widget?
我正在使用 yii\widgets\DetailView
来显示一些像这样的单个对象信息:
<?= DetailView::widget([
'model' => $model,
'attributes' => [
'id',
'username',
'email:email',
[
'attribute'=>'status',
'value' => $model->status,
],
'created_at:date',
'updated_at:date',
],
]) ?>
我想用不同的颜色显示状态。所以基本上我想将 .red
的 class 添加到包装 <td>
标签,或者更好地用 <span class="red">{value}</span>
包装状态
GridView
有 contentOptions
这真的很容易使用。但是 DetailView
我已经尝试过 options
和 template
,但我无法让它工作。也许我做错了什么,或者我需要使用其他属性。
所以这对我不起作用:
[
'attribute'=>'status',
'value' => $model->status,
'template' => '<tr><th>{label}</th><td><span class="red">{value}</span></td></tr>'
],
有人可以解释一下如何实现吗?
提前致谢。
你应该试试:
[
'attribute'=>'status',
'value' => '<span class="red">'.$model->status.'</span>',
'format' => 'raw',
],
我正在使用 yii\widgets\DetailView
来显示一些像这样的单个对象信息:
<?= DetailView::widget([
'model' => $model,
'attributes' => [
'id',
'username',
'email:email',
[
'attribute'=>'status',
'value' => $model->status,
],
'created_at:date',
'updated_at:date',
],
]) ?>
我想用不同的颜色显示状态。所以基本上我想将 .red
的 class 添加到包装 <td>
标签,或者更好地用 <span class="red">{value}</span>
GridView
有 contentOptions
这真的很容易使用。但是 DetailView
我已经尝试过 options
和 template
,但我无法让它工作。也许我做错了什么,或者我需要使用其他属性。
所以这对我不起作用:
[
'attribute'=>'status',
'value' => $model->status,
'template' => '<tr><th>{label}</th><td><span class="red">{value}</span></td></tr>'
],
有人可以解释一下如何实现吗? 提前致谢。
你应该试试:
[
'attribute'=>'status',
'value' => '<span class="red">'.$model->status.'</span>',
'format' => 'raw',
],