2015-03-12 5 views
0

я добавил пользовательские правила проверки в поставщике услуг, как этоткак добавлять сообщения об ошибках сообщений об ошибках от поставщика услуг в Laravel 5

namespace App\Providers; 

use Illuminate\Support\ServiceProvider; 

class ValidatorServiceProvider extends ServiceProvider { 

    /** 
    * Bootstrap any application services. 
    * 
    * @return void 
    */ 
    public function boot() { 
     $this->app['validator']->extend('chk', function ($attribute, $value, $parameters) { 
      if(some_check){ 
       return true; 
      }else{ 
       //add error message 
      } 
     }); 
    } 

    public function register() { 

    } 

} 

, но я хочу, чтобы добавить сообщение об ошибке вместо возвращения ложного , как это сделать ?

ответ

0

extend() может принимать 3 параметра, первый из которых имя проверки, то вторая является функция, которая содержит все данные для проверки и третий, который позволяет для сообщения об ошибке, так что вы могли бы сделать это следующим образом:

$this->app['validator']->extend('chk', function ($attribute, $value, $parameters) { 
    if (some_check) { 
     return true; 
    } else { 
     return false; 
    } 
}, ':attribute field error.'); 

Подтверждение требует возврата логического значения, истина будет проходить проверку, а false - сообщение об ошибке. И :attribute является заполнителем для имени поля. Вы также можете добавить собственное сообщение об ошибке в файл resources/lang/en/validation.php. Таким образом, чтобы не только держать их в одном месте, это также приносит вам пользу, если у вас есть различные варианты языка для вашего приложения.

Смежные вопросы