我在一个需要来自多个表的数据的项目中使用 Doctrine。为了避免 N + 1 问题,我在进入视图之前获取我需要的所有数据。正如我在文档中看到的,执行此操作的方法是与表进行联接,然后使用联接表的别名调用 addSelect。问题是,当我构建所需的查询并调用 getResult 时,Doctrine 返回实体对象和连接实体的代理的集合,这会在视图中的数组迭代期间导致问题,因为代理没有与实体对象具有相同的属性。我对这种行为真的很困惑。你能帮我解决这个问题吗?
心有法竹
相关分类