【发布时间】:2018-01-10 16:05:43
【问题描述】:
我有 2 个实体:
- LinkServInfra
- 服务
LinkServInfra 实体:
- 身份证
- serv(关系 OneToOne 到 Serv)
- infra(ManyToOne 到另一个实体)
现在,我想获取一个基于 infra 的 Serv 列表。
所以我在 LinkServInfraRepository 中尝试了:
$qb = $this->createQueryBuilder('s')
->select('DISTINCT s.serv')
->where('s.infra = :infra')
->setParameter('infra', $infra);
return $qb->getQuery()->getResult();
我得到一个错误:
[Semantical Error] near 'serv FROM': Error: InvalidPathExpression.
Must be a StateFieldPathExpression.
(我首先尝试不使用 DISTINCT,然后根据此处找到的答案尝试使用它)。
查询似乎很好,因为它是:
SELECT DISTINCT s.serv
FROM MyBundle\Entity\LinkServInfra s
WHERE s.infra = :infra
你会怎么做? 谢谢!
【问题讨论】:
标签: symfony doctrine-orm symfony-2.7