2016-12-14 2 views
0

Я использую стандартную проверку Laravel, но я хочу настроить его, потому что я использую несколько языков в своем приложении, поэтому мне нужно настроить сообщение.Laravel Custom Validation for multi-language application

 $rule_validation = [ 
     'phone' => 'required|max:20|min:6|regex:/^[0-9]+$/', 
     'agree_promo_code' => request('promo_code') ? 'accepted' : '', 
     'terms_of_services' => 'accepted', 
     'aware' => 'accepted' 
     ]; 

Теперь я хочу написать настроить сообщение проверки для agree_promo_code

Я знаю, чтобы написать сообщение для телефона, но, несомненно в agree_promo_code, terms_of_services и осознанным. Может ли кто-нибудь помочь мне решить эту проблему?

Но, пожалуйста, имейте в виду о языке. Спасибо

+0

Как вы проводите валидацию? можете ли вы вставить код? –

ответ

0

Вы можете передать второй массив в вашу функцию валидации как

$this->validate($request,[ 
      'phone' => 'required|max:20|min:6|regex:/^[0-9]+$/', 
      'agree_promo_code' => request('promo_code') ? 'accepted' : '', 
      'terms_of_services' => 'accepted', 
      'aware' => 'accepted' 
     ],[ 
      'phone.required' => trans('validation.phone'), 
      'agree_promo_code.accepted' => trans('validation.agree_promo_code'), 
      'terms_of_services.accepted' => trans('validation.terms_of_services'), 
       'aware.accepted' => trans('validation.aware'), 
     ]); 

и внутри ресурсов/{языки} /validation.php файл языки/({} Ланг Ваш каталог язык).

вы можете сделать что-то вроде

return [ 
     'phone' => 'Phone validation message', 
     'agree_promo_code' => 'agree_promo_code validation message', 
     'terms_of_services' => 'terms_of_services validation message', 
]; 

Так он установит свои сообщения в соответствии с соответствующим языком.