Ввод Текста Формы 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.
Кинэн :)