我正在研究https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/working-with-associations.html但我无法弄清楚级联合并的作用。我在其他地方看到过
$new_object = $em->merge($object);
基本上创建一个基于$object
. 那是对的吗?
我正在研究https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/working-with-associations.html但我无法弄清楚级联合并的作用。我在其他地方看到过
$new_object = $em->merge($object);
基本上创建一个基于$object
. 那是对的吗?
$em->merge()
用于获取已脱离实体管理器上下文的实体并“重新附加它”。
级联合并将此行为扩展到您正在合并的实体的关联实体。这意味着更改会级联到关联,而不仅仅是合并的实体。
我知道这是一个老问题,但我认为值得一提的是它$em->merge()
已被弃用,很快就会被删除。在这里检查
不推荐使用合并操作,并将在 Persistence 2.0 中删除。合并应该是应用程序业务领域的一部分,而不是 ObjectManager 的通用操作。
另请阅读此文档 v3 他们希望如何存储实体
避免以诸如 $_SESSION 之类的序列化格式存储实体是一个好主意:而是存储实体标识符或原始数据。