如何使用symfony只渲染表单的一个字段

use*_*384 3 symfony twig

我想只渲染一个表单的一个字段.当我把{{form_end(form)}}其他所有领域都来了(symfony doc清楚地显示)但是如何只渲染一个领域?如果我不放{{form_end(form)}},只有一个字段,但没有保存按钮

谢谢

Xat*_*too 8

是的,CSS可以做到这一点.但是,您希望应用程序的工作依赖于客户端样式规则吗?在大多数情况下,根本不需要渲染字段HTML.

您可以通过两种方式在模板中修复此问题.

  1. 放在{% do form.field_you_want_to_hide.setRendered %}你面前{{form_end(form)}}.这会将字段标记为已渲染,因此在调用form_rest时它不会显示.

  2. 而不是{{form_end(form)}}使用{{ form_end(form, {'render_rest': false}) }},如Symfony Twig文档中所述.

更改表单类以便从表单中删除字段会更好.它是您想要呈现的自己的表单,还是来自第三方包的表单?