自定义验证不会返回默认错误消息

时间:2018-08-09 12:38:49

标签: laravel laravel-validation

我在一个程序包中开发了一个自定义的Laravel验证。 在我的provider中,我写了这段代码:

public function boot()
{
    Validator::resolver(function ($translator, $data, $rules, $messages) {
          return new MyNewValidator($translator, $data, $rules, $messages);
    }); 
}

MyNewValidator类中,我有以下方法:

public function validateMyValue($attribute, $val, $parameters) {
  .
  .
  .
  if ($blah) {
    return true;
  }else{
    return false;
  }
}

将包添加到config/app.phpcomposer.json后,我尝试在请求文件中使用它:

public function rules()
{
    return [
        'val' => 'required|my_value'
    ];
}

一切正常,但是当验证失败时,Laravel应该返回如下默认消息:

The val field is required.

但是我的项目返回了这个:

validation.my_value

我的工作哪里错了?

1 个答案:

答案 0 :(得分:0)

定义您的自定义消息

`public function message()
{
    return 'my_value is not good.';
}`