Laravel Blade Forms: Файл Старые данные
У меня есть следующий код для обновления, который работает для текстовых полей:
{!! Form::text('username', @$admin->adminName, ['placeholder' => 'Enter the username']) !!}
Но для файлов:
{!! Form::file('image', @$admin->photo) !!}
Выдает следующую ошибку:
Illegal string offset 'name'
2 ответа
Решение
Form::file() не поддерживает старый ввод. Проверьте FormBuilder
класс, метод file
,
Кстати, как вы ожидаете, что это должно работать? Загруженный файл не будет сохранен в сеансе.
Второй параметр для Form::file() - это массив опций.
Самая простая форма этого метода - передать только имя.
{{ Form::file('thefile') }}
Это создает очень простой элемент, который выглядит следующим образом.
<input name="thefile" type="file">
Чтобы добавить другие атрибуты, передайте второй аргумент методу. Этот второй аргумент должен быть массивом.
{{ Form::file('thefile', ['class' => 'field']) }}
Теперь у входа есть атрибут класса.
<input class="field" name="thefile" type="file">