使用预定义数据将CollectionType添加到表单

时间:2017-01-30 16:22:24

标签: php symfony doctrine

我想基于名为CollectionType的{​​{1}}向表单添加FormType。另外,我有另一个名为SectionCaseType的实体,其中包含TypeSection的所有可用部分类型(介绍,摘要,讨论,参考书目等)。

所以问题是我不知道如何从头开始打印CollectionType的所有选项(我不需要用户可以添加或删除部分,因为它们是预定义的)。

这是我的代码:

ClinicalCaseType

CollectionType

SectionCaseType

在这里,我想我应该为public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('title') ->add('sections', CollectionType::class, array( 'entry_type' => SectionCaseType::class, )); } 实体中的每一行添加代码以重复CollectionType,或者我对问题的解决方法可能是错误的。

TypeSection

TypeSection

public function buildForm(FormBuilderInterface $builder, array $options)
    {  

        $builder
        ->add('text');
    }

1 个答案:

答案 0 :(得分:0)

您可能希望添加带有Choice字段的数据转换器。这是一个类似的问题,可以用来解决你的问题。

Symfony DataTransformers with choice forms