Я использую функцию регистрации laravel для регистрации пользователя. Я добавил флажок, где пользователь должен принять условия. Я хочу, чтобы пользователь регистрировался, когда установлен флажок. Могу ли я использовать «обязательную» проверку в laravel? Это моя функция проверки:
return Validator::make($data, [ 'firstName' => 'required|max:255', 'lastName' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6', 'checkbox' =>'required', ]);
Когда я использую такую функцию, laravel дает требуемую ошибку для флажка, даже если он проверен.
Это html флажка
<input type="checkbox" name="checkbox" id="option" value="{{old('option')}}"><label for="option"><span></span> <p>Ik ga akkoord met de <a href="#">algemene voorwaarden</a></p></label>
Надеюсь, вы, ребята, можете мне помочь!
Он будет работать, просто убедитесь, что входное значение не будет пустой строкой или ложью. И 'checkbox' => 'required' – это нормально, если ключ является значением атрибута имени ввода.
Используйте accepted
правило.
return Validator::make($data, [ 'firstName' => 'required|max:255', 'lastName' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6', 'option' =>'accepted' ]);
Используйте флажок required_without_all для:
return Validator::make($data, [ 'firstName' => 'required|max:255', 'lastName' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6', 'checkbox' =>'required_without_all', ]);
См. https://laravel.com/docs/5.1/validation#available-validation-rules
У меня просто было большое разочарование, потому что код, который я использую, возвращает значение флажка в виде логического значения.
Если у вас есть аналогичная ситуация, вы можете использовать следующее правило:
[ 'checkbox_field' => 'required|in:1', ]
Ваши правила валидации должны быть связаны с атрибутами имени ваших полей формы html:
return Validator::make($data, [ 'firstName' => 'required|max:255', 'lastName' => 'required|max:255', 'email' => 'required|email|max:255|unique:users', 'password' => 'required|confirmed|min:6', 'option' =>'required', //not checkbox ]);