Doctrine实体将所有字段复制到现有实体

时间:2016-07-25 10:27:00

标签: php symfony doctrine-orm

我有实体类Post,它包含字段idold_id,因为当用户创建新帖子并保存时,另一个用户可以编辑同一个帖子并提交以供审核,但第二次编辑应该在原始用户验证之前不会对原始帖子产生影响,然后当原始用户验证并批准此编辑的帖子时,它应该合并/更新原始帖子。所以我创建了这两个字段来跟踪一个帖子是另一个帖子的副本,所以一旦作者批准了第二篇帖子我就可以更新原帖并丢弃重复。

我设法用

复制帖子
public function __clone() {
   $this->id = null;
}

用它复制。

// copying from old post
$new_post = clone $post;

// set original id
$new_post->setOriginalId($post->getId());

//save
$em = $this->getDoctrine()->getManager();
$em->persist($new_post);
$em->flush();

一切都很好,但是现在当作者批准原帖时,如何用重复帖子的数据更新真实帖子。

$original_post = $repository->find($new_post->getOriginaId());
//now i want to merge all $new_post datas to this $original_post
// and update $original_post

0 个答案:

没有答案