на репах в typeOrm,, но в доке не нашел пока возможности добавлять кастомное поле для ответа. К примеру, у меня есть посты. У поста есть комменты. в findAll я хочу сделать так, чтобы не выводились комменты (это понятно как), а добавлялось поле commentCount, в котором выводилось количество комментов.
В доке нашел только это
https://typeorm.io/#/view-entities?
Ну еще merge есть, но это как-то костыльно вроде
## loadRelationCountAndMap помог, но его почему-то в доке нет
Можно сначала получить сущности, а потом перебрать их, удалив ненужные поля и добавив нужные. Ну есть ещё leftJoinAndMapOne/Many, может для каких-то задач подойдёт
Через квери билдер можно или чистым запросом что-то типа такого: `SELECT p.* count(c.id) as commentsCount from «posts» p LEFT JOIN «comments» c ON p.id = c.post_id GROUP BY p.id`
Ошибка будет, потому что в select может быть больше полей, чем в group by. Группировку можно убрать, а commentsCount посчитать через подзапрос. Тогда и join не понадобится.
Обсуждают сегодня