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

207
Vistas
¿Es posible completar referencias anidadas en Mongoose?

Soy nuevo en MongoDB y trato de completar datos de otra colección en una respuesta. El ejemplo más sencillo sería el siguiente:

 const CartSchema = new Schema({ items: [{ product: { type: Schema.Types.ObjectId, ref: 'product' }, qty: Number }], ... });

Puedo usar .populate() cuando las relaciones están en el nivel raíz, pero en el ejemplo anterior, tengo una variedad de elementos con sus propias propiedades, por ejemplo, qty , más una referencia _id a un producto. Me gustaría completar el objeto del producto en cada elemento del automóvil, pero parece que no puedo encontrar ningún ejemplo sobre cuál es la forma "correcta" de hacerlo.

 Cart.findById(id) .populate('products') // <-- something like this .then(record => ... ) .catch(next);

Sé que probablemente podría hacer un .find() separado en la colección de productos después de ubicar el registro del carrito y extender manualmente el objeto inicial, pero esperaba que hubiera una manera de completar los datos dentro de la consulta original.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Puedes probar esto, te funcionará.

 Cart.findById(id) .populate('items.product') .then(record => ... ) .catch(next);

.populate('items.product') populate objeto del product de todos los elementos del carrito presentes en la matriz.

over 4 years ago · Santiago Trujillo 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