如何更改ActiveField的标签文本?

Vad*_*dim 25 yii2 active-form

我已经创建了新的Yii2基础项目并希望深入挖掘.

登录页面上有一个用户名字段: 在此输入图像描述

我想将标签'Username'更改为自定义标签,例如'My superb label'.我已阅读手册:http: //www.yiiframework.com/doc-2.0/yii-widgets-activefield.html

稍微调查一下后,我得到了下一个结果: 在此输入图像描述

我只更改了模板并更改了布局:

<?= $form->field($model, 'username', [
    "template" => "<label> My superb label </label>\n{input}\n{hint}\n{error}"
])?>
Run Code Online (Sandbox Code Playgroud)

如何以正确的方式更改标签的文本?什么是最佳做法?

Jak*_*ner 19

还有另一种很酷的方式.

<?= $form->field($model, 'username')->textInput(['class'=>'field-class'])->label('Your Label',['class'=>'label-class']) ?>
Run Code Online (Sandbox Code Playgroud)


Vad*_*dim 18

好的,只需覆盖LoginForm.php中的attributeLabels:

/**
 * Returns the attribute labels.
 *
 * See Model class for more details
 *  
 * @return array attribute labels (name => label).
 */
public function attributeLabels()
{
    return [
        'username' => '?????',
        'password' => '??????',
    ];
}
Run Code Online (Sandbox Code Playgroud)