Symfony 使用连接到细枝中显示dql结果
如何从twig中的联接表列表中访问属性Symfony 使用连接到细枝中显示dql结果,symfony,doctrine-orm,twig,Symfony,Doctrine Orm,Twig,如何从twig中的联接表列表中访问属性 $query = $this->getEntityManager() ->createQuery(' SELECT e, l FROM AcmeDemoBundle:entry e JOIN e.fklist l WHERE e.fkuser=:user'
$query = $this->getEntityManager()
->createQuery('
SELECT e,
l
FROM AcmeDemoBundle:entry e
JOIN e.fklist l
WHERE e.fkuser=:user'
);
这是已创建的查询:
SELECT p0_.pkId AS pkId0, p0_.firstname AS firstname1, ....,
p1_.pkId AS pkId13, p1_.descriptionAlt AS descriptionAlt14, ...
FROM entry p0_ INNER JOIN list p1_ ON p0_.fkList = p1_.pkId
WHERE p0_.fkUser = ? LIMIT 5 OFFSET 0
我需要访问细枝中的属性:
{% for entry in entries %}
<tr>
<td>
{{entry. ...}}
</td>
<td>{{entry.lastname}}</td>
<td>{{entry.firstname}}</td>
</td>
</tr>
{% endfor %}
我不知道如何在不使用自己的别名设置每个属性的情况下从联接表中访问属性。您需要将查询结果传递给细枝模板! 在这里,您永远不会查询数据库 查看以找到最佳方法,但getResult似乎适合您的需要。然后访问您的财产,如:
{{ entry.firstname }}
您需要将查询结果传递给细枝模板! 在这里,您永远不会查询数据库 查看以找到最佳方法,但getResult似乎适合您的需要。然后访问您的财产,如:
{{ entry.firstname }}
你试过简单的{{entry.descriptionAlt}}吗?。。。或者{entry.fklist.descriptionAlt}}是的,我已经尝试过了。第一个给我一个错误,这个属性不在对象事件中,第二个是我要避免的部分,因为这会自动生成新的查询,以读取我想用我的连接读取的数据。。。。因为这会自动生成新查询,您确定吗?在应用程序/控制台条令:query:dql中尝试您的查询,您将看到它不仅返回entry,还返回关联的entry.fklist。因此,它可能不会生成新的查询。对不起,解释错了。我需要列表实体中作为关系列的属性。当我需要来自这个相关对象的数据时,它就会创建新的查询。您是否尝试过简单地{{entry.descriptionAlt}}?。。。或者{entry.fklist.descriptionAlt}}是的,我已经尝试过了。第一个给我一个错误,这个属性不在对象事件中,第二个是我要避免的部分,因为这会自动生成新的查询,以读取我想用我的连接读取的数据。。。。因为这会自动生成新查询,您确定吗?在应用程序/控制台条令:query:dql中尝试您的查询,您将看到它不仅返回entry,还返回关联的entry.fklist。因此,它可能不会生成新的查询。对不起,解释错了。我需要列表实体中作为关系列的属性。当我需要这个相关对象的数据时,它就会创建新的查询。