Symfony2 插入多个实体

Symfony2 insert multiple entities

我对插入多个实体有疑问。 如果我将每个实体都保存在一个循环中然后刷新,实体会发生什么情况?我的意思是如果其中一个实体被复制并且无法插入会发生什么?是删除了所有实体还是仅删除了重复的实体?

foreach($datas as $data) {
        $obj = new DataLerne();
        // Code ..
        $obj->setAtt($data['att']);
        $em->persist($obj);
}
$em->flush();

感谢您的回复

由于您是使用 new 运算符实例化您的对象,因此从技术上讲不能重复。

如果您担心填充对象属性的数组中的重复项,学说不关心这一点。

对于 Doctrine,这些新实体与 foreach 循环中的迭代一样多,它们都将在刷新时写入您的数据库。

但是如果有任何约束阻碍插入数据库,doctrine 将抛出异常并在原处中止。