2014-11-11 1 views
0

В Laravel, если проверка не удалась, она возвращается к той же странице формы. Как заселить флажок галочкой или без него?Laravel - Refopulate checkbox to ticked or unticked

По умолчанию, при загрузке на страницу в первый раз его следует отключать.

{{ Form::checkbox('custom_address', false, 
    Input::old('custom_address'), array('class' => 'test')); }} 
+1

'вернуть Перенаправление :: к ('форма') -> withInput();' См http://laravel.com/docs/4.2/requests#old-input – nilobarp

+0

@NilotpalBarpujari Да я уже получил, что , 'return Redirect :: to ('/ order/details') -> withErrors ($ validator) -> withInput (Input :: all())' –

ответ

2

Вы должны установить значение для вашего флажка, в противном случае Input класса всегда будет его пустым/бесконтрольно.

Дайте флажку значение 1, тогда оно должно работать.

{{ Form::checkbox('custom_address', 1, Input::old('custom_address'), array('class' => 'test')); }} 
-1

просто используйте условное обозначение.

@if(!empty(Input::old('custom_adress'))) 

{{ Form::checkbox('custom_address', true, 
Input::old('custom_address'), array('class' => 'test')); }} 

@else 

{{ Form::checkbox('custom_address', false, 
Input::old('custom_address'), array('class' => 'test')); }} 

@endif 
+0

Вы не должны дублировать свой код следующим образом. Это может привести к кошмару для обслуживания. Например, что происходит, если по дороге кто-то вносит изменения в код, но не делает изменения в обоих местах? – thestepafter

+0

это, на мой взгляд, зов _error в суде. когда вы видите условное выражение, и если вы внесете изменения, вы также должны проверить все остальные условия. – itachi