Ввод Текста Формы Laravel 4

привет, в настоящее время я работаю с формами Laravel 4. Я изо всех сил пытаюсь создать текстовый ввод с определенным классом, не выбирая "значение по умолчанию". Я хочу сделать следующее:

{{ Form::text('first_name', array('class' => 'first_name')) }}

однако я получаю эту ошибку (htmlentities() expects parameter 1 to be string, array given.) если я не добавлю значение по умолчанию:

{{ Form::text('first_name', 'Some Value', array('class' => 'first_name')) }}

затем значение по умолчанию заполняет поле и должно быть удалено перед вводом нового значения. Так что его даже нельзя использовать как подставку.

спасибо вперед,

Дэн

3 ответов


вместо значения supply null. (не поставляйте пустую строку "")

Это пригодится в будущем, если вы собираетесь работать с привязкой модели формы (http://laravel.com/docs/html#form-model-binding) потому что null даст значение данного атрибута модели.


вы можете передать пустое значение "" например,

{{ Form::text('first_name', '', array('class' => 'first_name')) }}

потому что Laravel 4-х HTML Form Builder API примет первый параметр как name, второй параметр как value что это null по умолчанию и третий параметр как options array что это empty array по умолчанию.

таким образом, в основном вы можете создавать текстовый ввод, передавая только имя, как,

{{ Form::text('first_name') }}

и если вы планируете передать параметры, которые являются третьим аргументом, вы должны передать второй аргумент также.

см. API Doc здесь http://laravel.com/api/source-class-Illuminate.Html.FormBuilder.html#235-246


Я нашел, что лучше использовать Input::old('first_name') для вашего значения по умолчанию вместо просто "", как:

{{ Form::text('first_name', Input::old('first_name')) }}

таким образом, если вы вернетесь в форму с недопустимыми данными и передадите ввод формы, он перезагрузит старый ввод, который пользователь ранее ввел. В этом случае "имя" is/может быть привязан к "имя" поле в таблице базы данных, а также.

Edit: Да, третий вариант-это массив входных параметров, таких как текстовое поле id, размер и т. д. или любой другой атрибут HTML.

Кинэн :)