Selecting a COUNT() from related entity provides valid query, but null result in the field
FractalizeR opened this issue · 1 comments
FractalizeR commented
I'm trying to show a count() of a related entity on a list page
.....
TextField::new('bankAgendaCount', 'count')->hideOnForm()->setDisabled(),
......
public function createIndexQueryBuilder(
SearchDto $searchDto,
EntityDto $entityDto,
FieldCollection $fields,
FilterCollection $filters
): QueryBuilder {
$queryBuilder = parent::createIndexQueryBuilder($searchDto, $entityDto, $fields, $filters);
$queryBuilder->addSelect(
'(SELECT COUNT(ba) FROM App\\Entity\\BankAgenda ba WHERE ba MEMBER OF entity.bankAgendas) AS HIDDEN bankAgendaCount'
);
return $queryBuilder;
}
It works, query is constructed correctly (it can be seen in Symfony debug toolbar, if I execute it - it provides correct results), but the resulting field is empty if you try to inspect it (list page shows 'null' as this page value:
Do I do something incorrectly? I tried to mark field as vitual, rename it to snake_caase variant in a query. No luck.