首页 > 解决方案 > Symfony 表单关系集合:避免创建另一个类的方法?

问题描述

我在一个有很多表格的项目上工作。几乎所有这些都是为实体 A 和相关实体 B 上的某些字段制作的(一对多:A 包含多个 B)。

我可以为每个表单使用 2 个类来制作所有表单:“主要”类型,与 A 的某些字段相关,以及我需要从实体 B 为该表单获取的字段的辅助类型,通过 CollectionType 使用 int 主要类型.

基本示例:

$builder->add('BcollectionFieldInA', CollectionType::class, [
    'entry_type' => BTypeForSomeFields::class, 
]);

当然,我必须为实体 A 制作这个 FormType,但我想知道是否:

有没有办法避免必须为 B 字段做另一个类(示例中的 BTypeForSomeFields::class)。这不是一个大问题,但是为一个表单创建始终(最少)2 种类型会增加无用的复杂性。我知道我的 B 字段的辅助类型永远不会被重用,有时它只会用于一个简单的文本字段!

标签: symfonysymfony-forms

解决方案


推荐阅读