Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在数据库中插入symfony2多选复选框值_Php_Symfony_Doctrine_Symfony 2.3 - Fatal编程技术网

Php 如何在数据库中插入symfony2多选复选框值

Php 如何在数据库中插入symfony2多选复选框值,php,symfony,doctrine,symfony-2.3,Php,Symfony,Doctrine,Symfony 2.3,我有一个symfony2表单,有几种类型的字段。 还有一个多选复选框,用于生成具有multiple=>true和expanded=>true的表单实体类型 在数据库中存储选定值的最佳方法是什么? 以及编辑时所选数据如何填充到表单中 欣赏你的想法 谢谢我认为最好的方法是在实体之间建立多对多关系,并在“表单类型”中添加指向目标实体的链接,您可以调用查询生成器来筛选复选框选项(此处为“活动标记”)。此类将用于添加和编辑 下面是一个包含两个实体的示例:产品和标签 实体/产品 /** *

我有一个symfony2表单,有几种类型的字段。 还有一个多选复选框,用于生成具有multiple=>true和expanded=>true的表单实体类型

在数据库中存储选定值的最佳方法是什么? 以及编辑时所选数据如何填充到表单中

欣赏你的想法


谢谢

我认为最好的方法是在实体之间建立多对多关系,并在“表单类型”中添加指向目标实体的链接,您可以调用查询生成器来筛选复选框选项(此处为“活动标记”)。此类将用于添加和编辑 下面是一个包含两个实体的示例:产品和标签

实体/产品

   /**
     * @ORM\ManyToMany(targetEntity="Name\NameBundle\Entity\Tag",cascade={"persist"})
     * @ORM\JoinTable(name="product_tags")
     */
    private $tags;
表格/产品类型

 ->add('tags','entity',array("label"=>" your tags",'attr'=>array('class'=>'form-control'),
                                          'class'=>"Name\NameBundle\Entity\Tag",
                                          'property'=>'name',
                                          'multiple'=>true,
                                          'expanded'=>true,
                                          'required'=>false,
                                          'query_builder'=>function(ER $er){
                                            return $er->getActiveTags();
                                          }))

您可以查看我对该问题的回答: