2017-02-05 9 views
0

バリデーターのカスタムルールを追加しようとしていますが、機能していないため、関数が呼び出されていません。私は、ドキュメント(https://laravel.com/docs/5.4/validation#custom-validation-rules)からこれを取った:Laravelカスタムバリデーター関数が呼び出されていない

AppServiceProviderで::ブートは、私がこれ持っている:

Validator::extend('foo', function ($attribute, $value, $parameters, $validator) { 
    return false; 
}); 

をし、私のコントローラでは、私はこれを持っている:

$validator = Validator::make($request->all(), [ 
    'myField' => 'foo', 
]); 

バリデータが失敗しません。私は間違って何をしていますか?

答えて

1

修正済みです。私のjsonが間違っていて、入力値がnull(または空)の場合、カスタムValidator :: extendsルールはチェックされません。だから、解決策は空ではありません

Validator::extendImplicit('foo', function ($attribute, $value, $parameters, $validator) { 
    return $value == 'foo'; 
}); 

または$要求フィールドになり

関連する問題