使用Symfony& amp;枝条

时间:2016-10-20 16:05:52

标签: php forms symfony twig

我希望在另一个表格中用树枝显示同一表格的2个实例,但我无法弄清楚如何。

这是我的第一个表格:

/**
 * @param FormBuilderInterface $builder
 * @param array $options
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    // build form
    $builder
        ->add('contenu', 'text', array(
            'attr'                  =>  array('maxlength' => 255),
            'empty_data'            =>  "Question par défaut"
        ))
        ->add('file', 'file', array(
            'attr'                  =>  array('accept' => "image/png, image/jpeg")
        ))
        ->add('contenuQuestion', 'collection', array(
              'type'                =>  new QuizzReponseType(), // here the embedded form
              'allow_add'           =>  true,
              'allow_delete'        =>  true,
              'cascade_validation'  =>  true,
         ))
    ;
}

在实体中:

/**
 * @ORM\ManyToMany(targetEntity="OC\QuizzBundle\Entity\QuizzReponse", cascade={"remove", "persist"})
 */
private $contenuQuestion;

function __construct() {
    $this->contenuQuestion = new ArrayCollection();
}

这里是嵌入式表格:

/**
 * @param FormBuilderInterface $builder
 * @param array $options
 */
public function buildForm(FormBuilderInterface $builder, array $options)
{
    // build form
    $builder
        ->add('contenu', 'text', array(
            'attr'                  =>  array('maxlength' => 50),
            'empty_data'            =>  "Réponse par défaut"
        ))
        ->add('file', 'file', array(
            'attr'                  =>  array('accept' => "image/png, image/jpeg")
        ))
    ;
}

问题出在我看来。我希望有2个嵌入式表单实例,但该集合似乎是空的。

它只适用于一个嵌入的表单(注意:我的第一个表单也在另一个表单中,但它与我的问题无关):

// embedded form content field
{{ form_widget(form.contenuQuizz.vars.prototype.contenuQuestion.vars.prototype.contenu) }}

我正在寻找类似的事情:

// embedded form1 content field
{{ form_widget(form.contenuQuizz.vars.prototype.contenuQuestion.0.vars.prototype.contenu) }}

// embedded form2 content field
{{ form_widget(form.contenuQuizz.vars.prototype.contenuQuestion.1.vars.prototype.contenu) }}

看起来问题是集合没有初始化但我不确定。

有办法吗? (如果可能的话,用树枝而不是JavaScript)

提前致谢,

Maugun

0 个答案:

没有答案