我在ZendFramework项目中使用Doctrine2和我有一个不容易解决了我的问题...实体Doctrine2 - 加载会话不起作用
所以,当用户成功登录页面,我把他的对象到会话:
Zend_Auth::getInstance()->getStorage()->write($user);
一切工作正常,但是当我刷新页面,并从会话负载的用户:
$user = Zend_Auth::getInstance()->getStorage()->read();
而与此$用户,我可以做任何Doctr ine2操作: - /。我能够例如使用“的getId()”方法,但是当我尝试例如使用$用户在任何关系:
$session = new App_Model_LogSessions();
$session->setUser($user);
...
我看到Doctrine2例外:
实体App_Model_Users是没有管理。如果一个实体从数据库中获取或通过EntityManager注册为新的,则管理实体#persist
如何解决这个问题?有什么方法“重新加载”实体吗?我需要使用会话,我不想在每个页面请求中从数据库加载用户。我想加载一次,并让他参加会议。
谢谢!