这一直困扰着我。
在Doctrine2中,我们有:ObjectManager
函数:
void persist(object $object = null)
您只需要在新实体上调用它。
我的问题是,“何时”应该被称为?创建实体后立即,或在冲洗之前立即?
我找不到任何指明惯例的文件。这很重要的原因是因为Doctrine在调用时会调度“持久性事件”。
鉴于该对象可能仍为空,似乎暗示标记在该事件上的任何功能都应忽略该对象在该时间点所包含的数据的重要性。
我在该陈述中是否正确,或者是否有一项约定条款推广?
答案 0 :(得分:1)
你想要做的是创建你的新对象,无论如何都要使用它,当你完成它并希望将它发送到你的数据库,然后在刷新它之前坚持它。
如果您在创建实体后立即对其进行了保留,则在发送到数据库时,您所做的任何更改都不会被考虑在内。