2017-03-24 8 views
0

私はLaravel 5.4用のパッケージを作成しており、いくつかのカスタム正規表現にエラーメッセージがあります。通常は、これらのメッセージをvalidation.phpファイルに入れます(これは動作します)。しかし、パッケージをインストールするときに、それらをコピーする必要はありません。Laravel 5.x用のカスタムエラーメッセージ

通常の検証でルールが見つからない場合に自動的に呼び出される追加の検証言語ファイルをパッケージに設ける方法はありますか言語ファイル?

+0

は、それを使用していないが、https://github.com/joshbrw/laravel-validation-rule-registrationは便利であるか、または少なくとも正しい方向にあなたを導くことがあります。 – alaric

+0

私は全く同じ問題を抱えています。検証ルール登録プラグインは、ルールをグローバルスペースに登録するのに役立ちますが、この問題を解決するようには見えません。特に検証を伴うカスタムパッケージには、非常に特殊な属性メッセージが必要です。 – Trent

答えて

0

OK

Validator :: make()呼び出しを使用している場合。鉱山は少し異なっているが、これは動作するはずです - あなたは、私がこのコードをテストしていません。この

$fields = [ 
    "fieldA" => "Testing", 
    "fieldB" => "TextB", 
]; 

$rules = [ 
    "fieldA" => [ 
     "alpha", 
    ], 
    "fieldB" => [ 
     "regex:/TextC/", 
    ], 
]; 

$messages = [ 
    "fieldA.alpha" => "Sorry champ, but fieldA must be only characters", 
    "fieldB.regex" => "The regex failed here", 
]; 

$validator = Validator::make($fields, $rules, $messages); 
if ($validator->fails()) return $validator->messages()->all(); 

行うことができます。

ここに参考:https://laravel.com/docs/5.4/validation#custom-error-messages

関連する問題