Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/237.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将条令的EntityManager保留在会话变量中_Php_Doctrine Orm_Session Variables_Entitymanager - Fatal编程技术网

Php 将条令的EntityManager保留在会话变量中

Php 将条令的EntityManager保留在会话变量中,php,doctrine-orm,session-variables,entitymanager,Php,Doctrine Orm,Session Variables,Entitymanager,我正在开发一个web应用程序,我将使用docrine框架来管理, 并发请求和事务查询(如插入或更新head和rows记录) 对于网络必需品,我想将操作分为不同的步骤: 第一步:我有一个页面,允许用户插入一个HeadTable记录,然后我将信息发送到服务器,创建一个实体,并将其存储在一个带有persist函数的EntityManager中 第二步:用户将编辑并插入所有RowsTable记录。当一切都完成后,就像以前一样,我将所有数据发送到服务器,创建实体并将它们关联到HeadTable记录 最后一

我正在开发一个web应用程序,我将使用docrine框架来管理, 并发请求和事务查询(如插入或更新head和rows记录)

对于网络必需品,我想将操作分为不同的步骤: 第一步:我有一个页面,允许用户插入一个HeadTable记录,然后我将信息发送到服务器,创建一个实体,并将其存储在一个带有persist函数的EntityManager中

第二步:用户将编辑并插入所有RowsTable记录。当一切都完成后,就像以前一样,我将所有数据发送到服务器,创建实体并将它们关联到HeadTable记录

最后一步:当用户确认他所做的一切时,我触发EntityManager的刷新操作,并在单个原子事务中将所有内容提交到数据库。 为了使所有这些步骤保持一致,我将EntityManager放入会话变量中,并在刷新操作后将其删除


一切似乎都很好,但我想知道这是解决问题的正确方法还是有更好的方法。

听起来是一个合理的尝试

但是,我可能会避免跨请求存储entitymanager。它需要担心数据库连接,因此可能会中断

然而,您可以做的只是将实体存储在会话中。将它们从entitymanager中分离(),然后在下一个请求时将它们合并()