Symfony/Doctrine2和联想实体



通常在自定义存储库类中进行查询时,我会使用以下内容:

SELECT * FROM BundleName:Entity

但我该如何处理关联实体呢?

我有一个实体"Ticket"和一个实体(Tag(。这是一种多对多的关系。

在phpMyAdmin中,我有一个ticket_tag关联表,但如何使用Doctrine获得它?

谢谢

您应该使用createQueryBuilder来处理您的自定义查询需求,以防您与实体之间存在有效关系。例如:在票证存储库中,您应该这样处理,如果您想进行更多操作,那么您应该从这里了解更多信息:https://symfony.com/doc/3.3/doctrine/repository.html

$query = $this->createQueryBuilder('t')
->select('count(t.id) as total_ticket, tag.id as tagId')
->leftJoin('t.tags', 'tag')
->groupBy('tag.id')
;
return $query->getQuery()->getResult();

最新更新