【发布时间】:2012-12-02 05:21:24
【问题描述】:
My\SampleBundle\Entity\Subject:
// ...
manyToOne:
author:
targetEntity: My\UserBundle\Entity\User
joinColumn:
name: owner
referencedColumnName: id
与主题相关的用户可以获取。
$query = $this->getEntityManager()
->createQuery('
SELECT s, a
FROM MySampleBundle:Subject s
LEFT JOIN s.author a
WHERE s.author = :author
GROUP BY s.title'
)
->setParameter("author", $author);
相反,我应该如何从用户信息中获取主题?
例如,用户列表页面中的查询。
$query = $this->getEntityManager()
->createQuery('
SELECT u
FROM MyUserBundle:User u
GROUP BY u.username'
);
此时,我也想获取一个相关科目的数据。
我使用 FOSUserBundle。
这是一个应该纠正 My\UserBundle\Entity 的问题吗?
还是从 orm 设置阶段就错了?
【问题讨论】:
-
请在下面添加您的解决方案作为答案。简要说明您更改了什么以及如何解决它。这将使它成为一个完美的问答条目。如果您遇到任何问题,请告诉我。是的,可以回答您自己的问题(然后接受答案)。
-
好的,它添加到文本中。但这不是完美的解决方案。获取了简单的数据。但是,当join table增加时,它停止应答,并且一直处于loading状态。我认为数据不一定太重。问题还没搞明白。
-
即使您对答案不是 100% 满意,也请不要只编辑您的问题,而是将其添加为答案下面(新的空框)。在您回答了您的问题并经过了一段时间后,您可以接受它作为答案,这会将您的问题标记为“已解决”。至少对于其他用户来说,问题和答案是什么更清楚。这甚至可能会吸引其他可能会留下另一个答案的人。
-
好的,我会这样做的。谢谢你的建议。
标签: php symfony doctrine-orm