我有一个用于帖子的表格和另一个带有回复帖子的表格。我在教义中正确映射了一个(帖子)到多个(回复帖子)的关系。我可以加入两者并得到我所期望的,每个回复的数组数组,但原始帖子的内容是相同的。是否可以为每个帖子返回一个数组/对象,并将回复内容放在一个数组中?
这是我现在得到的(如预期的那样):
array (size=2)
0 =>
array (size=2)
'content' => string 'Test homework post' (length=18)
'replyContent' => string 'this is a reply' (length=15)
1 =>
array (size=2)
'content' => string 'Test homework post' (length=18)
'replyContent' => string 'second reply' (length=12)
我想要这样的东西:
array (size=1)
0 =>
array (size=2)
'content' => string 'Test homework post' (length=18)
'replyContent' =>
array (size = 2)
0 => 'replyContent' => string 'this is a reply' (length=15)
1 => 'replyContent' => string 'second reply' (length=12)
我已经做了最好的研究,但只遇到了关于返回数组而不是对象的结果。也许这是不可能的,但我认为它可能正在考虑 php 类定义中的一对多关系映射:
$this->[name for protected variable] = new ArrayCollection();
非常感谢您的帮助!
编辑:这是我的学说查询:
SELECT
homeworkPost.content,
homeworkPostReplies.content AS replyContent
FROM AcmeMainBundle:HomeworkPost homeworkPost
LEFT JOIN homeworkPost.homeworkPostReplies homeworkPostReplies
WHERE homeworkPost.course = :course