目前我已经实现了以下自定义验证,但如果验证失败,我不知道如何附加自定义消息。为了澄清,我需要在扩展验证器时定义错误消息
Validator::extend('phone_number', function($attribute, $value, $parameters)
{
// is there anyway I could define a error message here, if this validation fails,
if (strlen($value) === 9)
{
if (substr($value, 0, 1) === '0')
{
return false;
}
}
else
{
if (substr($value, 0, 1) != '0')
{
return false;
}
}
return true;
});
我目前已将此代码放在boot方法中,并且在文档中他们说有一种方法可以定义自定义消息,但我真的不明白。
public function boot()
{
Validator::extend(...);
Validator::replacer('foo', function ($message, $attribute, $rule, $parameters) {
return str_replace(...);
});
}
答案 0 :(得分:1)
您可以通过向extend
方法添加第三个参数来指定您的消息,如下所示:
Validator::extend('phone_number', function($attribute, $value, $parameters) {
if (strlen($value) === 9)
{
if (substr($value, 0, 1) === '0')
{
return false;
}
}
else
{
if (substr($value, 0, 1) != '0')
{
return false;
}
}
return true;
}, 'Your custom message goes here'); // <--- HERE
答案 1 :(得分:0)
您可以将自定义验证规则消息放在resources/lang/en/validation.php
。
另请查看此页面:https://laravel-news.com/laravel-5-5-custom-validator-rules
这是创建自定义验证规则的更好方法。