@richvoronov

Как сделать поиск в БД с помощью Typeorm и вернуть мутированное значение?

Есть таблица Roles
{ id: number, name: string }
и таблица Users с отношением ManyToOne к Roles
{ id: number, name: string, role: Roles }.

В users.service.ts я пытаюсь сделать find или построить query самостоятельно через createQueryBuilder таким образом, чтобы в результате получить подобный объект

User data
{ id: 1, name: "Vasya", role: "user" }

вместо этого я получаю
User data
{ id: 1,  name: "Vasya", role:  { id: 2, name: "user" }}


Как мне вернуть данные о юзере в котором поле `role` будет иметь `role.name` вместо объекта ?
  • Вопрос задан
  • 217 просмотров
Решения вопроса 1
@richvoronov Автор вопроса
this.usersRepository.createQueryBuilder('User')
  .innerJoinAndSelect('User.role', 'Role')
  .select(['Role.name as role', 'User.id as id', 'User.name as name'])
  .getRawMany()
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Было бы хорошо увидеть код для построения запроса.
С ходу есть предложение использовать "сырой" sql, например, так https://typeorm.io/select-query-builder#getting-ra...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы