我在Symfony 2项目中创建了自己的表单类型,该项目的日期类型为子级。我在控制器中调用它:
$form = $this->createFormBuilder($customer)
->add('my_own_field_name', 'my_own_date_type', array())
->getForm();
在树枝模板中:
{{form_row(form.my_own-field_name)}}
是否可以通过' form_row'对Symfony2说出我自己的树枝来表示这个字段。函数而不是日期类型表示
谢谢
答案 0 :(得分:2)
考虑查看this part of the official SF2 documentation.
正如文档中所述,自定义类型的getName方法可帮助SF2找到自定义表单渲染器。由于您的类型名称为my_date_type
,因此SF2将尝试在已配置的表单模板列表中查找my_date_type_widget
块(如本文末尾和官方文档中所示)。
您只需在捆绑fields.html.twig
文件夹中创建一个模板resources/views/Form/
,该文件夹指定此块,如文档中所示,并在其中添加您自己的逻辑。
不要忘记添加配置行
# app/config/config.yml
twig:
form:
resources:
- 'YourOwnBundle:Form:fields.html.twig'
告诉symfony始终使用它来呈现此表单类型。