Php 对象中的doctrine2内部联接数据

Php 对象中的doctrine2内部联接数据,php,mysql,symfony,doctrine-orm,dbal,Php,Mysql,Symfony,Doctrine Orm,Dbal,所以我做了两个内部连接: <?php $q->select('o, pic.path pic1, pic_.path pic2'); $q->innerJoin('\TestBundle\Entity\UserImages', 'pic', 'WITH', 'o.id = pic.user'); $q->where('pic.keyname = \'pic1\''); $q->innerJoin('\TestBundle\Entity\UserImages'

所以我做了两个内部连接:

<?php

$q->select('o, pic.path pic1, pic_.path pic2');


$q->innerJoin('\TestBundle\Entity\UserImages', 'pic', 'WITH', 'o.id = pic.user');
$q->where('pic.keyname = \'pic1\'');

$q->innerJoin('\TestBundle\Entity\UserImages', 'pic_', 'WITH', 'o.id = pic.user');
$q->where('pic_.keyname = \'pic2\'');
有没有办法在对象中设置pic1和pic2? 我尝试将setPic1/Pic2添加到用户实体,但没有成功

我必须做什么才能让它在查询结果中工作


谢谢

我没有找到一种方法来做我想用的事情,但是因为我使用的是sonota,这就是我需要pic1和pic2的原因,所以我创建了一个数据网格装饰器并截取了getResult()方法。 在admin类中,我覆盖buildDataGrid(现在没有源代码,但我认为这就是方法),它将创建datagrid,但随后我将执行以下操作:

$this->datagrid = new DataGridDecorator($this->datagrid)
然后,装饰程序会将getResult()方法给出的结果更改为sonata期望的结果,因此我不必重写,因为我不知道有多少个模板


谢谢你的帮助

什么是
o
表?这些实体是如何关联的?@A.L 1对N关系,但我已经用我找到的解决方案更新了我的问题。o表将是用户表(DQL),您应该能够添加答案并接受它。
$this->datagrid = new DataGridDecorator($this->datagrid)