我在学说中设置了一个查询,我相信它会做它应该做的......它连接了几个表,所以我们可以跳过一堆额外的查询来通过外键获取数据:
$posts = $this->getDoctrine()->getManager()
->createQuery('
SELECT a AS article, COUNT(c) AS comments
FROM ArticleBundle:Article a
LEFT JOIN CommentsBundle:Comment c WITH (c.article = a.id)
LEFT JOIN ImageBundle:Image i WITH (i.id = a.image)
GROUP BY a.id
ORDER BY a.timestamp DESC
')
->getResult();
我能够非常成功地访问数据,如下所示:
{% for post in posts %}
<div id="news-story">
<div class="title">{{ post.article.title }}</div>
<div class="comments">{{ post.comments }}</div>
...
{% endfor %}
问题是,只要我在字段列表中添加第二列(“i AS image”),它就会失败。我收到以下消息...
“数组”的项目“文章”在...中不存在
......我不太明白为什么。我希望我能够访问像 {{ post.article.title }} 和 {{ post.image.path }} 之类的变量(顺便说一句,确实存在)......但我不能。
任何想法将不胜感激。
谢谢!