2013-06-06 3 views
0

Я создал форму в Symfony2:Symfony2 формы не оказывающие

$form = $this->createFormBuilder() 
     ->add('name', 'text') 
     ->getForm(); 

    return $this->render('SixStringPearBundle:Icon:form.html.twig', array("form" => $form->createView())); 

Когда я иду, чтобы сделать: {{ form(form) }}

Я получаю следующее сообщение об ошибке:

The function "form" does not exist. Did you mean "form_row", "form_rest", "form_label", "form_errors", "form_widget", "form_enctype" in SixStringPearBundle:Icon:form.html.twig at line 1

У меня есть также попытался использовать:

{{ form_start(form) }} 
{{ form_errors(form) }} 

{{ form_row(form.name) }} 

<input type="submit" /> 
{{ form_end(form) }} 

И я получаю следующее сообщение об ошибке: The function "form_start" does not exist in SixStringPearBundle:Icon:form.html.twig at line 1

Любые мысли о том, почему это может происходить?

+2

Довольно уверен, что вы используете версию <2.3 – cheesemacfly

+0

Да только что поняла, что :) .. Я запускаю 2.2. Спасибо –

+0

Я сталкиваюсь с той же проблемой, и я использовал версию symfony3.3.5, но получаю ту же ошибку при рендеринге формы в ветке. Ошибка: Исключение было сделано во время рендеринга шаблона («Без блока« form_start », найденного при рендеринге формы.») Не могли бы вы рассказать мне, что в этом плохого? – mobizen

ответ

1

Функция была изменена с form_widget() to form() в symfony2.3. Я использую symfony2.2 и читаю неправильные документы.

0

Какая версия S2 вы используете? Вы что-то изменили в app/config/config.yml?

Я подозреваю, что, возможно, у вас была опечатка где-то, и у меня возникли проблемы с ее исправлением. Снизить файл form.html.twig в одну строку:

{{ form(form) }} 

Если вы как-то не удалось отключить ветку моста FormExtension, то он должен видеть функцию формы.

==================

@cheesemacfly правильно. form() добавили к 2.3. При просмотре документации выберите правильную версию в правом верхнем углу. Еще лучше, начните с S2.3.0. Нет смысла работать со старыми версиями.

+0

«Начиная с самого начала», как правило, не вариант, а обновление. Кроме того, 2.2 все еще поддерживается. У меня все еще есть несколько проектов 2.0 и 2.1, работающих в прямом эфире, которые я не смогу обновить в обозримом будущем. – Maerlyn

Смежные вопросы