我正在使用Symfony 2,有此查询,我想获取所有用户的所有联系人姓名:
$results = $es->createQueryBuilder()
->select('m.id, d.contactName')
->from('AppBundle:Profile', 'm')
->leftJoin('AppBundle:Contacts', 'd','with','d.profileid = m.id')
->groupBy('m.id')
->getQuery()
->getResult();
问题是,当我想显示每个用户的联系人姓名时,我只会得到一个名字。我可以在每个用户上使用for循环,但目前无法使用。我希望能够不循环显示所有名称
我在这里想念什么?
答案 0 :(得分:0)
因此,看来Profile
和Contacts
之间存在某种联系,但您仍然使用profileid
来加强这种联系-这已经过时了。
对于返回的单个结果,我认为您使用了错误的groupBy
方法,但是我不能确定没有看到正在运行的实体。
无论如何,在这种情况下,我肯定会使用getArrayResult()
函数(而不是getResult()
),该函数会返回数组。尝试也删除groupBy
并看看会得到什么。
在您使用实体更新问题后,我可以扩大答案。