Symfony 2:更改内部自定义表单字段选项

时间:2014-10-14 08:32:51

标签: symfony

在我的行动中,我有这个:

$formBuilder = $this->createFormBuilder($myEntity);

$formBuilder
    // (...)
    ->add('myInnerEntities', 'collection', array(
            'label' => 'My inner entities',
            'type'   => new InnerEntityType(),
            'allow_add' => true,
            'allow_delete' => true,
            'by_reference' => false,
            'options' => [
                    'InnerEntityTypeField1' => [
                        'label' => 'Change this image'
                    ],
                    'InnerEntityTypeField2' => [
                        'label' => 'Change the caption'
                    ]
                ]
        ))

在'选项中'在InnerEntityType的集合中,我试图覆盖集合中每个InnerEntityType字段的选项。

上述代码不起作用。我怎么能实现这一点,当然避免使用不同的标签(或其他选项)值创建几个InnerEntityType类?

1 个答案:

答案 0 :(得分:0)

<ul class="tags" data-prototype="{% filter escape %}{% include 'yourBundle:formviewfolder:prototype.html.twig' with {'form': form.collectionname.vars.prototype} %}{% endfilter %}">

                                                {{ form_errors(form.collectionname) }}
                                                {{ form_widget(form.collectionname) }}

             </ul>

在主窗体视图文件夹中创建一个prototype.html.twig,如下所示

// prototype.html.twig

<div >

    {{ form_row(form.InnerEntityTypeField1,{'label':'your label'}) }}

</div>
<div >

    {{ form_row(form.InnerEntityTypeField2,{'label':'your label'}) }}

</div>