我不确定这是否可行:
我在几个实体之间有很深的关系,我不知道如何有效地计算相关实体,以显示每个实体的累计总数。
我希望显示如下内容:
Magazine A: 6 issues, 12 chapters, 24 pages
Magazine B: 12 issues, 20 chapters, 51 pages
因此,在检索“杂志”时:
$entities = $em->getRepository('MyBundle:Magazine')->findBy(array(),
array('name' => 'ASC'));
在模板中,我可以这样做:
<td>{{ entity.issues.count }}</td>
显示与“杂志”相关的“问题”数量。
我的问题是,现在我想要这些“问题”子集的累计“章节”数量,依此类推。类似的东西:
<td class="counter">{{ entity.issues.chapters.count }}</td>
<td class="counter">{{ entity.issues.chapters.pages.count }}</td>
显然这不起作用,我无法想办法做到这一点。有没有办法做到这一点?
答案 0 :(得分:0)
尝试
{{ entity.issues|length }}
答案 1 :(得分:0)
{{ entity.issues.chapters.pages.count }}
无法正常工作,因为entity.issues
是一个数组集合。你可以得到这样一个问题的章节:
{{ entity.issues[INDEX_KEY].chapters.pages.count }}
或
{% for issue in entity.issues %}
{{ issue.chapters.count }}
{% endfor %}