教义2&;Symfony2:在foreach循环中保存时重置ID值
请参阅以下代码:教义2&;Symfony2:在foreach循环中保存时重置ID值,symfony,doctrine-orm,Symfony,Doctrine Orm,请参阅以下代码: $passwords = array('aaaa', 'bbbb', 'ccccc', 'dddd', 'eeeee'); $em = $this->getDoctrine()->getEntityManager(); $foo = new Foo(); $foo->setName('Joe Bloggs'); $foo->setTitle('Mr'); foreach ($passwords as $password) { $foo->
$passwords = array('aaaa', 'bbbb', 'ccccc', 'dddd', 'eeeee');
$em = $this->getDoctrine()->getEntityManager();
$foo = new Foo();
$foo->setName('Joe Bloggs');
$foo->setTitle('Mr');
foreach ($passwords as $password) {
$foo->setPassword($password);
$em->persist($foo);
$em->flush();
}
在这里,当我尝试保存$foo
对象时,我希望将其保存X次,其中X是$passwords
的长度,但是它只插入一次值,然后更新另外4次
有谁知道我如何做到这一点,使它插入记录5次
感谢在对象标识上选择创建和更新:
- 新建对象=>创建
- 现有对象=>更新
$passwords = array('aaaa', 'bbbb', 'ccccc', 'dddd', 'eeeee');
$em = $this->getDoctrine()->getEntityManager();
foreach ($passwords as $password) {
$foo = new Foo();
$foo->setName('Joe Bloggs');
$foo->setTitle('Mr');
$foo->setPassword($password);
$em->persist($foo);
}
$em->flush();