2

私はLaravelアプリケーションに取り組んでいます。UserRequest入力を検証しています。次のルール:

'name' => 'sometimes|required|string|min:2|max:50'

sometimesキーワードが存在するにもかかわらず、ユーザー名が存在しない場合は失敗します。ただし、次のリクエストは正常に機能します。

'name' => 'sometimes|string|min:2|max:50'

この問題を経験したのは私が初めてではありません ( Laravel validation required rule not workingを参照)。

ただし、ドキュメントには、最初のオプションを使用する必要があると記載されています。

場合によっては、フィールドが入力配列に存在する場合にのみ、そのフィールドに対して検証チェックを実行したい場合があります。これをすばやく行うには、ルール リストに once ルールを追加します。

$v = Validator::make($data, [
    'email' => 'sometimes|required|email',
]);

上記の例では、email フィールドは $data 配列に存在する場合にのみ検証されます。

( https://laravel.com/docs/5.1/validation )

それが私が間違っているのか、それとも報告する必要があるバグなのか知っている人はいますか?

4

0 に答える 0