我在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
有关为何可能发生这种情况的任何想法?
答案 0 :(得分:1)
该函数已从symfony2.3中的form_widget() to form()
更改。我正在使用symfony2.2并且正在阅读错误的文档
答案 1 :(得分:0)
您使用的是哪个版本的S2?你在app / config / config.yml中有什么改变吗?
我怀疑你可能在某处犯了错字并且一直试图修复它。将form.html.twig文件减少到一行:
{{ form(form) }}
除非你以某种方式设法禁用了树形桥FormExtension,否则应该看到表单函数。
==================
@cheesemacfly是正确的。 form()被添加到2.3。查看文档时,请在右上角选择正确的版本。更好的是,从S2.3.0开始。使用旧版本没有意义。