Twig中“form”和“form_widget”之间有何不同?

时间:2014-01-23 20:13:03

标签: symfony twig

我在同情网站上看过Twig Template Form Function and Variable Reference。但是,我不太明白它们之间的主要区别。

例如,

{{ form(form)}}{{ form_widget(form) }}

所以,我的问题是:

其中两个之间有何不同,它们会生成不同的HTML代码吗?什么时候优先于另一个?

2 个答案:

答案 0 :(得分:5)

form(form)将为表单标签,表单输入以及所有表单元素的表单错误生成HTML。

form_widget(form.x)只会为表单输入生成HTML(例如文本框),因此您必须自己生成其他人,或者还包括form_label(form.x)form_error(form.x)

答案 1 :(得分:1)

{{ form(form)}}生成包含<form></form>标记的整个表单,并立即生成字段。 {{ form_widget(form) }}用于分别生成特定字段。另请阅读有关Symfony formsRendering each Field by Hand

的文档