创建没有实体的学说存储库 class

Create a doctrine repository class without an entity

我目前处于需要创建一个 Repository class 的情况,其中将包含多个财务统计查询。这些查询并不完全与一个 Entity 相关联,而是与多个 Entities 相关联,并且会根据各种条件从数据库中 select 特定数据。

话虽如此,我正在寻找一种方法来创建 Repository class(即 StatisticsRepository),它根本与 Entity 无关,所以我可以将查询存储在那里。简单地创建该存储库似乎不起作用。我猜我可能需要创建某种服务来加载此存储库 class?这是正确的吗?如果是的话,Symfony/Doctrine 文档中是否缺少我的示例?

您可以创建一个 class,例如 StatisticsService/StatisticsFinder(命名规则适合您)。

该服务应该注入一个实体管理器,因此请在您的配置中定义它。 在该服务中创建一个查询构建器,然后简单地获取 return 结果。