Итак, у меня есть форма на мой взгляд:
{{Form::file('projectPicture', ['class' => 'uploadedImage', 'data-some-attribute' => ''])}}
с атрибутом data-some-attribute
,
И в моем маршруте я получаю это так:
$request->file('projectPicture');
Как мне получить data-some-attribute
в маршруте? Это вообще возможно?
Я знаю, что могу использовать ajax для передачи любых данных, но можно ли этого избежать в этом случае?
Спасибо!
Невозможно, как вы собираетесь работать, только потому, что это не так, как данные формы работают под капотом. Второй аргумент в вашем образце Form::file
просто украшает визуализированный элемент формы. Он не имеет корреляции с данными формы, которые передаются между сервером и клиентом.
Для всех намерений и целей данные формы — это просто прославленный набор пар ключ-значение. Если вы хотели пройти some-data-attribute
на ваш контроллер маршрута, у вас есть два варианта —
Добавьте другое поле формы и сделайте его пустым, используя Form::hidden
. В этом случае вы бы просто назвали поле some-data-attribute
,
Если ваша форма отправлена методом POST, вы можете прикрепить some-data-attribute
на маршрут формы и получить его из запроса.
то есть your/route
становится your/route?some-data-attribute=whatever
, и вы можете получить его позже с чем-то вроде $request->input('some-data-attribute')
,
Других решений пока нет …