@NewSantaClaus

Можно ли заменить on на true после валидации Laravel?

Валидирую входние данные. Так как параметри приходят через гет, то я не могу просто так передать true or false в гет запросе. Поэтому передаю on и off.

Далее проверяю 'sometimes|string|in:off,on'.

Возможно ли сразу после проверки как-то сделать замену, так, чтобы дальше в коде я мог спокойно использовать true и false? Или может другой подход подскажите
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
delphinpro
@delphinpro Куратор тега Laravel
frontend developer
Почему не можете?

<input type="checkbox" name="check" value="1">

$request->validate([
  'check' => 'sometimes|bool',
]);


Если нужно и false передавать, то добавить скрытое поле с тем же именем перед чекбоксом:

<input type="hidden" name="check" value="0">
<input type="checkbox" name="check" value="1">


=========

Кроме того, можно использовать FormRequest
Чекбокс передается, если он отмечен, значит можно проверить присутствует ли он в данных и обновить их перед валидацией
protected function prepareForValidation()
    {
        $this->merge([
            'check' => $this->has('check')
        ]);
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы