Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 27.05.2020 20:12:39

Как валидировать массивы объектов с разными наборами данных

В FormFequest заходят данные с фронта в виде:

paramA[0][type]=type1
paramA[0][question]=q
paramA[1][type]=type2
paramA[1][question]=q
paramB[0][type]=type3
paramB[0][question]=q
paramB[1][type]=type4
paramB[1][question]=q

Я могу их провалидировать примерно так:

paramA.*.type => 'required'

Но есть ньюанс. Мне нужно проверить обязательность наличия параметра в зависимости от конкретного значения параметра type в пределах каждой группы обьектов. На примере у меня их 4: paramA[0], paramA[1], paramB[0], paramB[1]. Т.е. в пределах каждой из 4х этих наборов данных нужно проверить значение type. Если оно такое как ожидается, значит параметр question обязательный.
Как это можно реализовать?

Я знаю что есть required_if, но как это увязать с тем, что у нас несколько наборов данных?

Изменено Antuan (27.05.2020 20:15:48)

Не в сети

#2 20.07.2020 17:33:41

Re: Как валидировать массивы объектов с разными наборами данных

Вам нужен $validator->sometimes

Не в сети

Подвал раздела