Подтвердить что ты не робот

Как изменить текст метки ActiveField?

Я создал новый базовый проект Yii2 и хочу копать.

На странице входа есть поле Имя пользователя: enter image description here

Я хочу изменить ярлык "Username" на пользовательский, например. "Моя превосходная этикетка". Я прочитал руководство: http://www.yiiframework.com/doc-2.0/yii-widgets-activefield.html

После небольшого исследования у меня есть следующий результат: enter image description here

Я изменил только шаблон и изменил макет:

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

Как правильно изменить текст метки? Какая практика?

4b9b3361

Ответ 1

Хорошо, просто переопределите атрибутыLabels в LoginForm.php:

/**
 * Returns the attribute labels.
 *
 * See Model class for more details
 *  
 * @return array attribute labels (name => label).
 */
public function attributeLabels()
{
    return [
        'username' => 'Логин',
        'password' => 'Пароль',
    ];
}

Ответ 3

есть еще один классный способ.

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

Ответ 4

Вы также можете добавить такую ​​модель в модель:

public function attributeLabels()
{
    return [
        'username' => 'My Login',
        'password' => 'My Pasword',
        'rememberMe' => 'Remember Me, please',
    ];
}