【发布时间】:2019-06-10 20:27:13
【问题描述】:
带有 JMS 的 Symfony 4。
Parent 类与 OneToMany 子类相关联。在存储库中,我得到了一些父母和一些孩子(左加入条件)。但是,当尝试序列化父级时,JMS 会自动从数据库中获取所有(!)子级,从而对数据库进行额外的查询。我怎样才能避免这种情况? JMS 配置中是否有任何选项?
我唯一想到的是VirtualProperty() 版本,我将在其中过滤已经在实体中的子项。但这不是很有效。
UPD。
我想序列化这个字段,但不是所有的子实体。只有满足条件。在存储库中,我执行->leftJoin('p.children', 'c', 'WITH', 'c.foo = bar'),但序列化程序通过单独的请求加载不在条件中的元素。这就是问题
【问题讨论】:
-
你可以看到这个,但不是完美的解决方案:stackoverflow.com/questions/11575345/…
标签: symfony jms jmsserializerbundle