0

我从数据库中拉出一个基本实体,将其克隆到循环中以创建新实体,更改一些细节,然后持久化实体。

出于某种原因,这是No Entity in Identity Map在调用.addToIdentityMapUnitOfWorkEntityManager->flush()

我也尝试过创建一个实体并手动将所有属性设置为另一个,没有区别。

我对教义内部不是特别熟悉,这里出了什么问题?

4

1 回答 1

0

尝试向__clone实体类添加一个方法来清除标识符,以便 Doctrine 将其识别为新实体:

public function __clone()
{
    if ($this->id) {
        $this->id = null;
    }
}

请注意,该方法是根据 Doctrine 的文档建模的,用于安全实施__clone

于 2015-03-19T13:49:19.203 回答