Я создал поля переключателя следующим образом
EDIT: я изменил форму, как это было предложено в комментариях
<div class="form-group"> {!! Form::label('is_kids_friendly','Kids Friendly:') !!} {!! Form::radio('kidsfriendly', 'true', null),' ', 'Yes' !!} {!! Form::radio('kidsfriendly', 'false', null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('is_kids_only','Kids Only:') !!} {!! Form::radio('kidsonly', 'true', null),' ', 'Yes' !!} {!! Form::radio('kidsonly', 'false', null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('sineor_citizan_friendly','Sineor Citizan Friendly:') !!} {!! Form::radio('seniorcitizen', 'true', null),' ', 'Yes' !!} {!! Form::radio('seniorcitizen', 'false', null),' ','No' !!} </div>
Поскольку это поле переключателя, я использовал boolean
в базе данных. Каждый раз, я заполняю детали, он принимает 0
. Кроме того, я могу выбрать несколько переключателей, это не должно произойти. Я делаю что-то неправильно?
Вы должны сделать следующие изменения, тогда ваш запрос контроллера будет работать так, как вы хотите!
<div class="form-group"> {!! Form::label('is_kids_friendly','Kids Friendly:') !!} {!! Form::radio('is_kids_friendly', true, null),' ', 'Yes' !!} {!! Form::radio('is_kids_friendly', false, null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('is_kids_only','Kids Only:') !!} {!! Form::radio('is_kids_only', true, null),' ', 'Yes' !!} {!! Form::radio('is_kids_only', false, null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('sineor_citizan_friendly','Sineor Citizan Friendly:') !!} {!! Form::radio('sineor_citizan_friendly', true, null),' ', 'Yes' !!} {!! Form::radio('sineor_citizan_friendly', false, null),' ','No' !!} </div>
name
должно быть одинаковым с другим value
s. Попробуйте –
{!! Form::label('is_kids_friendly','Kids Friendly:') !!} {!! Form::radio('is_kids_friendly', 'yes', true),' ', 'Yes' !!} {!! Form::radio('is_kids_friendly', 'no'),' ','No' !!}
Аргументами являются: – radio('name of field', 'value', 'checked or not')
{!! Form::label('is_kids_friendly','Kids Friendly:') !!} {!! Form::radio('value', 'yes', null),' ', 'Yes' !!} {!! Form::radio('value', 'no', null),' ','No' !!}
Попробуйте это: первый параметр – имя переключателя, второй параметр – значение, третий – по умолчанию
Вы передаете $ request-> all () непосредственно в метод create, и в этом случае имя вашего HTML-поля должно быть таким же, как имена столбцов в вашей базе данных
<div class="form-group"> {!! Form::label('is_kids_friendly','Kids Friendly:') !!} {!! Form::radio('is_kids_friendly', 'true', null),' ', 'Yes' !!} {!! Form::radio('is_kids_friendly', 'false', null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('is_kids_only','Kids Only:') !!} {!! Form::radio('is_kids_only', 'true', null),' ', 'Yes' !!} {!! Form::radio('is_kids_only', 'false', null),' ','No' !!} </div> <div class="form-group"> {!! Form::label('senior_citizen_friendly','Sineor Citizan Friendly:') !!} {!! Form::radio('senior_citizen_friendly', 'true', null),' ', 'Yes' !!} {!! Form::radio('senior_citizen_friendly', 'false', null),' ','No' !!} </div>