许多与许多关系重复进入



我有两个实体与许多关系相关联。例如,可以说我的实体是驾驶员和汽车。驾驶员可以有多辆车,而汽车可以有多个驾驶员。

在我的驾驶员实体上:

/**
* @ORMManyToMany(targetEntity="CARS")
* @ORMJoinTable(name="driver_car")
protected $cars;

固定了联接表的名称,因此我必须指定它。

当我保存新驱动程序时,我可以指定多辆车。

它可以正常工作,我将新的驱动程序保存在BDD中,在驱动程序_CAR中,我的行与驾驶员指定的汽车一样多。

问题是,即使它已经存在于汽车中,它也会创建新车。

例如,如果我在DB中有2辆车,请说:

ID |libelle

1 |法拉利

2 |Porsh

现在,我创建了一个名为Foo的新驱动程序,并将他链接到法拉利,我最终有:

ID |libelle

1 |法拉利

2 |Porsh

3 |法拉利

在DB中。

fyi我使用symfony2表单保存或更新实体。

我试图使用不同的"级联"值而无济于事。有人可以向我解释我做错了什么?

谢谢您的时间:)。

我发现我的问题来自哪里。

我正在使用表单来验证我的对象,并且配置不佳。

之前:

            ->add('CARS', CollectionType::class, array(
            'entry_type' => CARSTYPE::class,
            'allow_add'  => true,
            'allow_delete' => true,
            'by_reference' => false
        ))

之后:

    ->add('CARS', EntityType::class, array(
        'class' => 'CARS',
        'invalid_message' => 'Cannot find car.',
        'multiple' => true,
    ))

相关内容

  • 没有找到相关文章

最新更新