我想使用自定义验证错误消息创建自定义验证规则。为此,我创建了一个规则:Laravel 5.2具有自定义验证功能的自定义验证消息
$rule => [
'app_id' => 'isValidTag'
]
而对于自定义消息:
$message => [
app_id.isValidTag => 'Not a Valid id'
];
之后,我创建了服务提供者:
class CustomValidationServiceProvider extends ServiceProvider
{
public function boot() {
//parent::boot();
$this->app->validator->resolver(function($transator,$data,$rules,$messages){
return new CustomValidator($transator,$data,$rules,$messages);
});
}
}
而且我的自定义验证类是:
class CustomValidator extends Validator {
if(empty($parameters)) {
return true;
}
$conext = $parameters[0];
$tag = Tag::where('id', $value)->where('context', $conext)->get();
$flag = false;
if($tag->count() > 0) {
$flag = true;
}
return $flag;
}
全部工作正常t问题是我的自定义消息app_id.isValidTag
不工作,即使所有其他消息都正常工作。
请告诉我我在这里或在Laravel 5.2中丢失的信息,显示信息有一些变化。任何想法将不胜感激。
您还可以添加错误信息直接在函数中使用''validator-> setCustomMessage(['。 '=>'<错误信息>'])'' –
arleslie
@ user3632055如果你在那里我需要一点帮助 – lewis4u
@ lewis4u whats up? – user3632055