Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

242
Vistas
Falta la propiedad en el tipo prisma/cliente/índice, al agregar un tipo personalizado al esquema de Prisma

Mi tipo personalizado "Observaciones" no parece generarse correctamente porque recibo este mensaje de error

Falta la propiedad 'observaciones' en el tipo 'import("/Users/thomasandrew/Documents/webApps/social-innovate/boilerplate/packages/api/node_modules/.prisma/client/index"). ActionPlan' pero requerido en el tipo 'import ("/Usuarios/thomasandrew/Documentos/webApps/social-innovate/boilerplate/packages/api/src/modules/actionPlan/actionPlan.model").ActionPlan'.ts(2741) actionPlan.model.ts(25, 5) : 'observaciones' se declara aquí.

Este es mi archivo de esquema Prisma (se eliminaron algunos campos extraños)

 model Observation { id String @id @default(dbgenerated("gen_random_uuid()")) actionPlan ActionPlan @relation(fields: [actionPlanId], references: [id]) actionPlanId String meetingDate DateTime? place String? } model ActionPlan { id String @id @default(dbgenerated("gen_random_uuid()")) @unique testName String observations Observation[] }

modelo type-graphql

 @ObjectType() export class ActionPlan extends BaseModel implements Prisma.ActionPlan { @Field() testName: string @Field() department: string @Field() code: string @Field() outcome: string @Field() hypothesis: string @Field(type => [Observation]) observations: Observation[] }

Sin embargo, incluso cuando ejecuto prisma generate con éxito, no agrega las 'observaciones' al Plan de acción. ¿Me estoy perdiendo de algo? Cualquier ayuda sería genial. También adjunté una captura de pantalla de los tipos generados en node_modules/.prisma/client/index.d.ts

ingrese la descripción de la imagen aquí .

ingrese la descripción de la imagen aquí

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Dado que tiene una relación entre esos 2, su código debe proporcionar un argumento de inclusión, de modo que su @Resolver y @Query puedan completar esa entidad en la respuesta.
Además, no sé si está dentro de su ActionPlanService la conexión prisma (probablemente sí, ya que obtiene este error).
Entonces, por ejemplo, su primera consulta debe apuntar a esta función ActionPlanService :

 async getActionPlan(id: string): Promise<ActionPlan> { return await this.prismaService.actionPlan.findFirst({ where: { id, }, include: { observations: true, } });

o algo similar, ya que no se como se conecta con prisma en ese servicio

about 4 years ago · Juan Pablo Isaza Denunciar

0

Prisma no incluye relaciones en los tipos generados porque no todas las consultas las incluyen. Las consultas de Prisma devuelven relaciones según las opciones utilizadas, pero en el código generado esto se hace a través de TypeScript complejo.

Pero siempre puede definir tipos con relaciones incluidas manualmente o usando una combinación de las utilidades ReturnType<T> y Awaited<T> .

Ejemplo de definición manual:

 type ActionPlanWithObservations = ActionPlan & { observations: Observation[] }

Ejemplo usando Awaited y ReturnType:

 type ActionPlanWithObservations = Awaited<ReturnType<ActionPlanService["getActionPlan"]>>

Donde ActionPlanService es:

 class ActionPlanService { getActionPlan(id: string) { return prisma.actionPlan.findFirst({ where: { id, }, include: { observations: true, } }) } }

Nota: La utilidad Awaited<T> está disponible desde TypeScript 4.5

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda