У меня недавно добавлено поле выбора в моей форме обновления laravel:
<tr>
<td>{!! Form::label('statusCode', 'Active') !!}</td>
<td>{!! Form::select('statusCode', array('A' => 'Yes', 'D' => 'No')) !!}</td>
</tr>
Установка его на Да или Нет работает, и когда я отправляю форму, она корректно обновляет запись базы данных, но возникает небольшая головная боль при проверке.
Технически, если я устанавливаю «Нет» для деактивации изображения, тогда все, что мне нужно, - это идентификатор изображения, поэтому я знаю, какой из них деактивировать, но сейчас это вызывает проверку на ненужных входах, если они пустые.
Таким образом, в этом блоке, если мой выбор установлен на «D» или «Нет», мне нужно только указать идентификатор:
$this->validate($request, [
'id' => 'required|numeric|unique:jfi.image_files,id,' . $id,
'prdGrpNum' => 'numeric|required',
'altGrpDesc' => 'required',
'cover1' => 'numeric|required',
'color1' => 'numeric|required',
'typeId' => 'numeric|required'
]);
Однако, в следующем блоке я проверяю все заполненные входные данные в базе данных, чтобы сохранить данные в санированном состоянии.
Таким образом, для этого блока я хочу сказать: «Если поле выбора установлено на« D »/« Нет », И это поле пустое, не проверять. Иначе, сделайте эту существующую проверку для imageService»
if(!$imageService->validImageTypeId($request->typeId))
return back()->withErrors("Invalid image type given");
Как я могу использовать значение поля выбора, чтобы пустые поля могли пропускать проверку, но заполненные поля все еще подлежали проверке?