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

245
Vistas
¿Cómo puedo agregar un filtro para algunos campos como opcional después de hacer $agregar $búsqueda? ¿Qué cambios se requieren?

quiero obtener datos por tema y por grado y también algunos otros campos .................................. .................................................... .................................................... .................................................... ..........................................................

 const skip = Number(page) === 1 ? 0 : Number(perPage) * (Number(page) - 1); const limit = Number(skip) + Number(perPage); let queryData: any = {};`enter code here` if (grade != null) { queryData.grade = grade; } if (subjects != null) { queryData.subjects = subjects; } let teacherData= await this.teacherModel.aggregate([ { $lookup: { from: "eclasses", localField: "_id", foreignField: "teacher", as: "classes" } }, { $lookup: { from: "courses", localField: "_id", foreignField: "teachers.id", as:"course", } }, { $project:{firstName:1, lastName:1,"classes.grade":1,"classes.subject":1,"classes.name":1,"course._id":1} } , { $match: {...queryData} }, { $facet: { TeacherRecord: [{ $skip: skip }, { $limit: limit }], metadata: [{ $count: "total" }, { $addFields: { page: page } }], }, }, ]) const totalCount = teacherData[0]?.total const getPaginationResult = PaginationHandle.getPageCount( page, perPage, totalCount ); return [ teacherData,getPaginationResult]; }```
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