如何在Symfony3中使用Entity作为选项处理Choice Type

时间:2017-09-15 15:02:42

标签: symfony

我有两个实体:课堂和学生。与ManyToOne的关系。在创建新学生时,我使用带课堂的表格作为选择类型:

    $arr = array();
    foreach ($classes as $c){
        $arr[$c->getNom()]="true";
    }
    $form = $this->createFormBuilder($student)->add('nom', TextType::class)
            ->add('classe',ChoiceType::class,array('choices'=>$arr))
            ->add('save',SubmitType::class,array('label'=>'Enregistrer le niveau'))
            ->getForm();
        $form->handleRequest($request);

twig文件代码是这样的:

  {{ form_widget(form.classeroom,{'attr':{'class':'form-control input-rounded'}}) }}.

问题是在提交表格后,我不知道如何将classeroom id提供给学生。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

也许你使用了错误的Type。而不是ChoiceType使用EntityType this question

    $form = $this->createFormBuilder($student)->add('nom', TextType::class)
                ->add('classe',ChoiceType::class,array(
                     'class' => 'AppBundle:Youclass',
                     'choice_label' => 'nom',
                     // used to render a select box, check boxes or radios
                     // 'multiple' => true,
                     // 'expanded' => true,
))
                ->add('save',SubmitType::class,array('label'=>'Enregistrer le niveau'))
                ->getForm();