2017-09-21 2 views
1

現在、以下のカスタム検証を実装していますが、検証が失敗した場合にカスタムメッセージを添付する方法がわかりません。バリlaravelでバリデーターを拡張するときに、カスタム検証メッセージを添付する方法はありますか?

Validator::extend('phone_number', function($attribute, $value, $parameters) 
    { 
     // is there anyway I could define a error message here, if this validation fails, 
     if (strlen($value) === 9) 
     { 
      if (substr($value, 0, 1) === '0') 
      { 
       return false; 
      } 
     } 
     else 
     { 
      if (substr($value, 0, 1) != '0') 
      { 
       return false; 
      } 
     } 

     return true; 
    }); 

を拡張する際に明確にするために、私は現在、起動方法の中にこのコードを配置した、およびドキュメントに「彼らは次のようにカスタムメッセージを定義する方法がありますと言うが、私は本当にドンエラーメッセージを定義する必要がありますそれを理解する。

public function boot() 
{ 

Validator::extend(...); 

Validator::replacer('foo', function ($message, $attribute, $rule, $parameters) { 
    return str_replace(...); 
}); 

}

+0

::(「PHONE_NUMBER」、関数($属性を拡張、$ value、$ parameters){// ....}、 'You custom message'); ';) – Maraboc

+0

これはあなたの探しているものですか? – Maraboc

+0

はい、これです、これを回答として投稿できますか?そして、ありがとうございます – v1shva

答えて

1

あなたはこのようなextend方法に三番目のパラメータを追加することによって、あなたのメッセージを指定することができます:あなたは、単に `バリデータを拡張するために第三引数を追加することができます

Validator::extend('phone_number', function($attribute, $value, $parameters) { 

    if (strlen($value) === 9) 
    { 
     if (substr($value, 0, 1) === '0') 
     { 
      return false; 
     } 
    } 
    else 
    { 
     if (substr($value, 0, 1) != '0') 
     { 
      return false; 
     } 
    } 

    return true; 
}, 'Your custom message goes here'); // <--- HERE 
0

あなたはresources/lang/en/validation.phpにカスタム検証ルールのメッセージを入れることができます。

また、このページを見て:https://laravel-news.com/laravel-5-5-custom-validator-rules

それはあなたのカスタム検証ルールを作成するためのよりよい方法です。

+0

はい、私はこの方法について知っていますが、今私はこれを使用することはできませんので、代替を探しています。 – v1shva

関連する問題