170 похожих чатов

10 ответов

28 просмотров

Для реализации пагинации на связанных сущностях в TypeORM, вы можете использовать метод relation и skip и take для указания количества записей, которые нужно пропустить и взять соответственно. Вот пример кода: import { getRepository } from 'typeorm'; import { EntityA } from './entities/EntityA'; // Функция для получения связанных сущностей с пагинацией async function getRelatedEntitiesWithPagination(entityAId: number, skip: number, take: number) { const entityARepo = getRepository(EntityA); // Загружаем основную сущность const entityA = await entityARepo.findOne(entityAId); // Получаем связанные сущности с пагинацией const relatedEntities = await entityARepo .createQueryBuilder('entityA') .leftJoinAndSelect('entityA.relatedEntities', 'relatedEntities') .where('entityA.id = :id', { id: entityAId }) .skip(skip) .take(take) .getOne(); return relatedEntities?.relatedEntities ?? []; } В приведенном выше примере мы используем функцию getRepository для получения репозитория EntityA. Затем мы загружаем основную сущность (в данном случае EntityA) с помощью метода findOne. Затем мы создаем запрос с использованием createQueryBuilder для получения связанных сущностей. Метод leftJoinAndSelect позволяет загрузить и связанные сущности, и метод skip и take используются для пропуска определенного количества записей и взятия нужного количества записей соответственно. В итоге, если EntityA содержит связь с RelatedEntity, функция getRelatedEntitiesWithPagination возвращает массив связанных сущностей с пагинацией. Вы можете изменить этот код в соответствии с вашей моделью данных и требованиями пагинации.

Dawut- Автор вопроса
Dawut
Но пагинация работает на родительский

а тебе нужно что? чтобы была пагинация, например, всех комментариев пользователя, как связанных сущностей?

Dawut
да

так запрашивай именно комменты по пользаку, что за изврат делать пагинацию по вложенным связям?

Dawut
да, на админке

мммм, на админке список пользователей с пагинацией, у каждого пользователя ещё какие-то сущности с пагинацией?

Dawut- Автор вопроса
Dawut- Автор вопроса
Aleksandr Vyatkin
мммм, на админке список пользователей с пагинацией...

ну типа беру через id категорию и возвращаю продукты

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта