Laravel: сохранить флажок после ошибки проверки?

#laravel

Вопрос:

В моей форме я хочу, чтобы флажки сохраняли свои состояния (отмеченные или снятые) после ошибки проверки. Это то, что у меня есть до сих пор:

 lt;input type="checkbox" id="delete-user" class="form-check-input" data-data-section="users" name="permissions[]" value="delete-user" {{ (is_array(old('permissions')) amp;amp; in_array(1, old('permissions'))) ? ' checked' : '' }}gt;  

Но похоже, что старая функция() не работает. Я тоже пытался:

 old('permissions.'.$key)  

где $key-это индекс массива флажков, но он тоже не работает.
Есть идеи ?

Комментарии:

1. Значение вашего флажка равно delete-user . Так не кажется ли вам, что в проверенном состоянии вместо этого должно быть delete-user 1 ?

Ответ №1:

Я думаю, что вы передаете недопустимое значение в функции in_array

Попробуй это:

 value="delete-user" {{ (is_array(old('permissions')) amp;amp; in_array('delete-user', old('permissions'))) ? ' checked' : '' }}gt;   

Комментарии:

1. Спасибо за вашу помощь, но по какой-то причине это все равно не работает. Это действительно выглядит так, как будто old() вообще не работает.

2. Хорошо, теперь это работает. Я тестировал с помощью простого перенаправления: return redirect()-gt;route('admin.users.roles.edit')-gt;with('error', __('message')); и оказалось, что входные данные не мигают. С другой стороны, входные данные автоматически мигают с запросами на проверку.