yii2 - validate - ¿Cómo cambiar el texto de etiqueta de ActiveField?
yii validate (4)
Creé el nuevo proyecto básico Yii2 y quiero profundizar.
Hay un campo de nombre de usuario en la página de inicio de sesión:
Quiero cambiar la etiqueta ''Nombre de usuario'' por una personalizada, por ejemplo, ''Mi excelente etiqueta''. He leído el manual: http://www.yiiframework.com/doc-2.0/yii-widgets-activefield.html
Después de investigar un poco, tengo el siguiente resultado:
Cambié solo la plantilla y cambió el diseño:
<?= $form->field($model, ''username'', [
"template" => "<label> My superb label </label>/n{input}/n{hint}/n{error}"
])?>
¿Cómo cambiar el texto de la etiqueta de forma correcta? ¿Cuál es la mejor práctica?
<?= $form->field($model, ''username'')->textInput()->label(''My superb label'') ?>
http://www.yiiframework.com/doc-2.0/yii-bootstrap-activefield.html#label()-detail
De acuerdo, simplemente anule las etiquetas de atributos en LoginForm.php:
/**
* Returns the attribute labels.
*
* See Model class for more details
*
* @return array attribute labels (name => label).
*/
public function attributeLabels()
{
return [
''username'' => ''Логин'',
''password'' => ''Пароль'',
];
}
hay otra manera genial.
<?= $form->field($model, ''username'')->textInput([''class''=>''field-class''])->label(''Your Label'',[''class''=>''label-class'']) ?>
También puede agregar dicha función al modelo:
public function attributeLabels()
{
return [
''username'' => ''My Login'',
''password'' => ''My Pasword'',
''rememberMe'' => ''Remember Me, please'',
];
}