Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

279
Visualizações
obtener campos en lugar de objetos de la relación (typeorm)

Soy nuevo en typeorm y cuando quiero recuperar una tabla que tiene una relación, las columnas de esa relación se recuperan en un objeto con el nombre de esa tabla. Aquí hay un ejemplo

 import { Entity, PrimaryGeneratedColumn, Column, OneToMany } from "typeorm" import { Photo } from "./Photo" @Entity() export class User { @PrimaryGeneratedColumn() id: number @Column() name: string @OneToMany((type) => Photo, (photo) => photo.user) photos: Photo[] }
 import { Entity, PrimaryGeneratedColumn, Column, ManyToOne } from "typeorm" import { User } from "./User" @Entity() export class Photo { @PrimaryGeneratedColumn() id: number @Column() url: string @ManyToOne((type) => User, (user) => user.photos) user: User }
 const user = await createQueryBuilder("user") .leftJoinAndSelect("user.photos", "photo") .where("user.name = :name", { name: "Timber" }) .getOne()

Resultado

 { id: 1, name: "Timber", photos: [{ id: 1, url: "me-with-chakram.jpg" }, { id: 2, url: "me-with-trees.jpg" }] }

Quiero que los campos de la relación estén al mismo nivel que los campos de mi tabla

Resultado Esperado

 { { id: 1, name: "Timber", id: 1, url: "me-with-chakram.jpg" } { id: 1, name: "Timber", id: 2, url: "me-with-trees.jpg" } }

¿Hay una opción para hacer esto? No encontré nada en sus documentos.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puedes probar esto,

 const user = await createQueryBuilder("user") .leftJoinAndSelect("user.photos", "photo") .select([ 'user.id', 'user.name', 'photos.id', 'photos.url' ]) .where("user.name = :name", { name: "Timber" }) .getOne();
about 4 years ago · Juan Pablo Isaza Relatório

0

Intenté usar '*' y funcionó

 const user = await createQueryBuilder("user") .leftJoinAndSelect("user.photos", "photo") .select('*') .where("user.name = :name", { name: "Timber" }) .getOne();
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda