Yii2 - 如何在输入字段上添加自定义错误消息

Par*_*one 1 validation label message rules yii2

在我的数据库中,我将'password'命名为'password_hash',因此我自动在错误消息中得到'password_hash',即使我将标签更改为'当前密码'.

例:

在此输入图像描述

我想要的是:

在此输入图像描述

Par*_*one 7

所以基本上我所做的只是添加

'message' => 'Current password cannot be blank.' 
Run Code Online (Sandbox Code Playgroud)

根据我的规则.

确保您分离正确的规则,因此您不会在多个字段上获取该消息,而这些字段没有意义.还要确保将其添加到'required'规则中,除非您希望该消息在其他规则时显示.

我希望这对你们有所帮助,因为我花了太多时间寻找它.


aro*_*hev 6

根据您的描述,您似乎更改了表单中显示的标签,而不是属性标签.

无需复制错误消息并将属性分离到不同的规则,对于大多数情况,更改attributeLabels()方法中的属性标签就足够了.

这样,如果您更改应用程序的语言,它将显示正确的错误消息.

在你的模型中:

public function attributeLabels()
{
    return [
        ...
        'password_hash' => 'Current password',
    ];
}
Run Code Online (Sandbox Code Playgroud)

所有默认验证器都从此部分获取属性标签,如果未定义,则将其转换为"密码哈希".