2014-04-16 3 views
11

Je suis confronté à un problème avec le message de validation Laravel personnalisé, voici ce que j'ai:Laravel Validation message personnalisé

$rules = [ 
    'first_name'   => 'required|alpha|min:2', 
    'last_name'    => 'required|alpha|min:2', 
    'email'     => 'required|email|unique:users,email,' . Input::get('id') . ',id', 
    'password'    => 'alpha_num|between:6,12|confirmed', 
    'password_confirmation' => 'alpha_num|between:6,12', 
    'address'    => 'regex:/^[a-z0-9- ]+$/i|min:2', 
    'city'     => 'alpha|min:2', 
    'state'     => 'alpha|min:2|max:2', 
    'zip'     => 'numeric|min:5|max:5', 
    'phone'     => 'regex:/^\d{3}\-\d{3}\-\d{4}$/', 
]; 
$messages = [ 
    'unique' => 'The :attribute already been registered.', 
    'regex' => 'The :attribute number has to be formated : xxx-xxx-xxxx.', 
]; 

Maintenant, s'il y a un problème avec l'adresse ou le numéro de téléphone puisque les deux ont règle de validation regex , le message d'erreur sera: Le numéro d'attribut doit être formulé: xxx-xxx-xxxx, Comment pourrais-je avoir un message personnalisé pour chaque différent?

+0

double possible de [Comment spécifier le message d'erreur par défaut lors de l'extension de la classe de validation de Laravel 4] (http://stackoverflow.com/questions/17647044/how-to-specify-the-default-error-message-when-extending-the-validation-class-in) –

+0

en fait je viens de le résoudre maintenant,: Tout ce dont vous avez besoin est – user3150060

+0

Si vous avez résolu cela, veuillez répondre à votre question pour bénéficier aux futurs utilisateurs de SO. –

Répondre

17

Voici la façon de le faire, juste au lieu d'utiliser « regex », utilisez « phone.regex »

$rules = [ 
    'first_name'   => 'required|alpha|min:2', 
    'last_name'    => 'required|alpha|min:2', 
    'email'     => 'required|email|unique:users,email,' . Input::get('id') . ',id', 
    'password'    => 'alpha_num|between:6,12|confirmed', 
    'password_confirmation' => 'alpha_num|between:6,12', 
    'address'    => 'regex:/^[a-z0-9- ]+$/i|min:2', 
    'city'     => 'alpha|min:2', 
    'state'     => 'alpha|min:2|max:2', 
    'zip'     => 'numeric|min:5|max:5', 
    'phone'     => 'regex:/^\d{3}\-\d{3}\-\d{4}$/', 
]; 
$messages = [ 
    'unique'  => 'The :attribute already been registered.', 
    'phone.regex' => 'The :attribute number is invalid , accepted format: xxx-xxx-xxxx', 
    'address.regex' => 'The :attribute format is invalid.', 
]; 
+1

ne le savais pas jusqu'à aujourd'hui :) J'ai également supprimé une fermeture de tableau supplémentaire-une erreur de syntaxe :) –

Questions connexes