Как проверить несколько правил с помощью 'required_if' на Laravel 5.5? - PullRequest
0 голосов
/ 10 октября 2018

Я пытаюсь проверить поле 'uuid', чтобы оно было обязательным, если поле 'typeUUID' помечено как 'type1'.

$validator = Validator::make($request->all(), [
    'uuid' => 'required_if:typeUUID,==,type1|alpha_dash|size:36',
]);

Если я выбираю значение 'type1', это означает, чтополе является обязательным, и когда я устанавливаю другое значение, которое не является обязательным, оно проверяет «alpha_dash» и «size: 36» и не принимает поле, поскольку оно отправляется пустым.

Какой правильный путь?

Я знаю, что мог бы сделать это с условием, проверив тип в начале и затем применив одно или несколько правил.Но я хотел бы знать правильный способ сделать это.

1 Ответ

0 голосов
/ 11 октября 2018

Я нашел решение, это добавить правило 'nullable' после правила 'required_if'.

$validator = Validator::make($request->all(), [
    'uuid' => 'required_if:typeUUID,==,type1|nullable|alpha_dash|size:36',
]);
...