You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Yii框架的DetailView小部件属性前添加自定义图标

实现方法

你可以通过自定义属性的label参数嵌入图标代码,同时开启raw格式避免HTML被转义即可,修改后的参考代码如下:

<?= DetailView::widget([
    'model' => $model,
    'options' => ['class'=>'table','style'=>'margin-bottom:0.2em;'],
    'attributes' => [
        [
            'attribute' => 'DT_NASC',
            // 替换<i>标签内容为你需要的图标代码即可
            'label' => '<i class="fa fa-birthday-cake"></i> ' . $model->getAttributeLabel('DT_NASC'),
            'format' => 'raw', // 必须配置,否则图标HTML会被转义为普通文本
        ],
        [
            'attribute'=>'PR_GENERO_ID',
            'value'=>$model->pRGENERO->DESIG,
            'label' => '<i class="fa fa-user"></i> ' . $model->getAttributeLabel('PR_GENERO_ID'),
            'format' => 'raw',
        ],
        [
            'attribute'=>'PR_PROFISSAO_ID',
            'value'=>$model->pRPROFISSAO->DESIG,
            'label' => '<i class="fa fa-briefcase"></i> ' . $model->getAttributeLabel('PR_PROFISSAO_ID'),
            'format' => 'raw',
        ],
        [
            'attribute'=>'LOCALIDADE_ID',
            'value'=>$model->lOCALIDADE->NOME,
            'label' => '<i class="fa fa-map-marker"></i> ' . $model->getAttributeLabel('LOCALIDADE_ID'),
            'format' => 'raw',
        ],
        [
            'attribute'=>'NACIONALIDADE_ID',
            'value'=>$model->nACIONALIDADE->NACIONALIDADE,
            'label' => '<i class="fa fa-flag"></i> ' . $model->getAttributeLabel('NACIONALIDADE_ID'),
            'format' => 'raw',
        ],
        [
            'attribute' => 'OBS:ntext',
            'label' => '<i class="fa fa-comment"></i> ' . $model->getAttributeLabel('OBS'),
            'format' => 'raw',
        ],
        //'DT_REGISTO',
    ],
]) ?>

说明:代码示例用的是Font Awesome图标类,你可以按需替换为自定义<img>标签等任意图标代码,只要保留format => 'raw'配置即可正常渲染。

内容的提问来源于stack exchange,提问作者Stephanie Inocêncio Semedo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 21:48:04