我从数据库中拉出一个基本实体,将其克隆到循环中以创建新实体,更改一些细节,然后持久化实体。
出于某种原因,这是No Entity in Identity Map
在调用.addToIdentityMap
UnitOfWork
EntityManager->flush()
我也尝试过创建一个实体并手动将所有属性设置为另一个,没有区别。
我对教义内部不是特别熟悉,这里出了什么问题?
我从数据库中拉出一个基本实体,将其克隆到循环中以创建新实体,更改一些细节,然后持久化实体。
出于某种原因,这是No Entity in Identity Map
在调用.addToIdentityMap
UnitOfWork
EntityManager->flush()
我也尝试过创建一个实体并手动将所有属性设置为另一个,没有区别。
我对教义内部不是特别熟悉,这里出了什么问题?
尝试向__clone
实体类添加一个方法来清除标识符,以便 Doctrine 将其识别为新实体:
public function __clone()
{
if ($this->id) {
$this->id = null;
}
}
请注意,该方法是根据 Doctrine 的文档建模的,用于安全实施__clone