Php Symfony2在添加级联表单时使用引用字段更新子表单

Php Symfony2在添加级联表单时使用引用字段更新子表单,php,forms,symfony,Php,Forms,Symfony,我使用的是symfony2表单,其中还有子表单 例如 $builder->add('aaa') ->add('bbb') ->add('ccc',new ccc() //CCC entity has more than one fields 如果我们在表单中添加新的ccc,那么这在添加和编辑方面工作得很好 $em->persist($build); $em->flush(); 现在的问题是,我需要通过单击自动完成来重用ccc,这将

我使用的是symfony2表单,其中还有子表单

例如

$builder->add('aaa')
        ->add('bbb')
        ->add('ccc',new ccc() //CCC entity has more than one fields
如果我们在表单中添加新的ccc,那么这在添加和编辑方面工作得很好

$em->persist($build);
$em->flush();
现在的问题是,我需要通过单击自动完成来重用
ccc
,这将填充实体
ccc
中的所有n个值

$cc = $em->getRepository('Acme:cc')->findBy(array("externalId"=>$build->getCcc()->getExternalId()));

$build->getCcc()->setId($cc->getId); //It is not possible because there is no setId method available
(and)
$build->setCcc($cc); //If is set like this add page edit details not saved
//If i do nothing it will duplicate the ccc values
如果id存在,我需要如何更新ccc

是否仍然可以合并对象或克隆对象以获得唯一可用的值


谢谢

你能详细说明一下吗?我不明白你想说什么say@shaheer在级联表单上,我有一个实体表单类型,它有多个字段,添加时我需要检查它是否已经存在,然后更新或插入新的!有可能吗?你不必检查,它会自动发生,不管怎样,我猜值在下拉列表中?@shaheer是的,如果我们给entity has select,如果我们给entity作为新的表单类型呢?它总是会添加新内容,但我不想总是添加新内容