Symfony通过CreateAction添加额外字段

Symfony通过CreateAction添加额外字段,symfony,doctrine-orm,Symfony,Doctrine Orm,我有一个用于Symfony请求的createAction 如何通过创建新的实体值在另一个实体中添加一些值 各部分见下文;怎么了 public function createAction(Request $request) { $entity = new FooType(); $form = $this->createForm(new FooTypeType(), $entity); $form->bind($request); if ($form-

我有一个用于Symfony请求的createAction

如何通过创建新的实体值在另一个实体中添加一些值

各部分见下文;怎么了

public function createAction(Request $request)
{
    $entity  = new FooType();
    $form = $this->createForm(new FooTypeType(), $entity);
    $form->bind($request);

    if ($form->isValid()) {
        $em = $this->getDoctrine()->getManager();
        $em->persist($entity);
        $em->flush();

        $entities = $em->getRepository('OtherBundle:Lists')->findAll();
        foreach($entities as $list){

            $manager = $this->getDoctrine()->getManager();

            $listValue = new ListValue();
            $listValue->setSpecification( new ListsType(), $list );

            $manager->persist($listValue);
            $manager->flush();
        }

        return $this->redirect($this->generateUrl('foo_foobar_show', array('id' => $entity->getId())));
    }

如果实体之间有适当的关联映射,并使用条令的持久化选项进行级联操作,则不必显式持久化相关实体

在这种情况下,你可以

$manager->persist($listValue);
此外,出于性能原因,请确保只刷新一次entityManager,除非您需要新保存实体的自动生成ID


在存储库(addListsToEntity())或manager类中创建一个新方法,用于添加列表

什么是ListType和ListType?!解释你想做什么。。。