Forms Symfony-为什么生成表单不在类型文件夹中

Forms Symfony-为什么生成表单不在类型文件夹中,forms,symfony,logic,Forms,Symfony,Logic,自从Symfony 2以来,我一直在问自己一个问题,3.2的情况仍然如此 当您使用控制台生成实体的formType时: 原则:生成:表单 EntityType位于\Form文件夹中,但不在\Form\Type中 为什么?? Sensiolabs本身建议将其放在Type文件夹中 有一种方法可以调整这个吗?不,不建议这样做 正如您在或中所看到的,它都使用Form而不是Type文件夹/命名空间 第二条甚至直截了当地说: 最佳实践 将表单类型类放在AppBundle\form命名空间中,除非使用其他自定

自从Symfony 2以来,我一直在问自己一个问题,3.2的情况仍然如此

当您使用控制台生成实体的formType时:
原则:生成:表单
EntityType位于\Form文件夹中,但不在\Form\Type中

为什么?? Sensiolabs本身建议将其放在Type文件夹中


有一种方法可以调整这个吗?

不,不建议这样做

正如您在或中所看到的,它都使用
Form
而不是
Type
文件夹/命名空间

第二条甚至直截了当地说:

最佳实践

将表单类型类放在AppBundle\form命名空间中,除非使用其他自定义表单类,如数据转换器


命名空间当然也意味着路径。

此外,如果使用其他自定义表单类(如DataTransformer),最佳实践建议创建子命名空间

例如,我总是使用:

---形式

-----------数据转换器

-----------类型


在这种情况下,所有表单类都存储在Type文件夹(和名称空间)中。

我记得insight.sensiolabs.com注意到我应该将表单类型放在Type文件夹中(因此我改变了习惯,让generate:form和repalce每次生成文件。但可能只是sensiolabs的算法不“好”在你引用的句子中,我不支持“除非”,因为当你有一个Web应用程序时,在开始的时候你只有你的表单,但是后来在项目中你可以拥有DATA格式(或其他)…所以在项目中间不容易改变。