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

107
Vistas
¿Cómo anidar documentos separados por identificación principal en express.js?

Estoy trabajando en un sitio web de comercio electrónico. He creado un modelo de mangosta para todas las categorías. Pero incluyendo la identificación principal para la categoría que es una subcategoría. cuando recibe una solicitud, toda la categoría se encuentra en databess. Está bien, pero quiero enviar la categoría de forma anidada. Por eso escribo así.

 // This is router Router.get('/categories', async (req, res) => { const createCategory = (categories, parentId = null) => { const categoryList = [] let category if (parentId === null) { category = categories.filter(cat => cat.parentId === undefined); } else { category = categories.filter(cat => cat.parentId === parentId) } for (let cate of category) { categoryList.push({ _id: cate._id, name: cate.name, slug: cate.slug, children: createCategory(categories, cate._id) }) } return categoryList } try { const categories = await Category.find({}) const categoryList = createCategory(categories) res.status(200).json({ categoryList }) } catch (error) { res.status(500).json("server side error") } }) // This is mongoose model const mongoose = require('mongoose'); const categorySchema = new mongoose.Schema({ name: { type: String, required: true, trim: true, unique: true }, slug: { type: String, required: true, unique: true }, parentId: { type: mongoose.Schema.Types.ObjectId } }, { timestamps: true }) module.exports = mongoose.model("Category", categorySchema)

El problema es que cuando trato de obtener datos de Clint, solo se genera una categoría de nivel raíz que no tiene una identificación principal. pero la matriz de niños está vacía así.

 { "categoryList": [ { "_id": "613af0410977fb9fefd2e605", "name": "Electronics", "slug": "Electronics", "children": [] } ] }

Creo que la función recursiva "createCategory" no funciona.

por favor alguien que me ayude soy nuevo en esto...

about 4 years ago · Juan Pablo Isaza
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