Buenos dias a todos tengo un problema con el tema de poblar en mongoose especialmente con el tema de los filtros, les explico lo que quiero hacer:
este es mi código actual:
let consult = await Experiences.find({}).populate("comments", { experienceId: 0, __v: 0 }).populate({ path: "city", __v: 0, match: { 'name': {$in: req.query.city}}, select: ['name','state'] });lo que necesito aqui es filtrar por ciudad los resultados totales no solo del campo ciudad en el poblado, ya que me devuelve los 2 datos que tengo y la ciudad de la cual no cumple la condicion en null lo que necesito es no mostrar directamente.
vuelve:
{ "success": true, "consult": [ { "comments": [], "_id": "616a96b05550a5f9959e724a", "name": "Museo", "city": null, "date": "2021-10-16T09:09:04.495Z", "__v": 1, "rate": 5 }, { "comments": [], "_id": "616a9dbeebc9e9ff2c95431a", "name": "Museo nuevo", "city": { "_id": "616a9da2ebc9e9ff2c954317", "name": "Miami" }, "date": "2021-10-16T09:39:10.420Z", "__v": 0 } ] }necesito este:
{ "success": true, "consult": [ { "comments": [], "_id": "616a9dbeebc9e9ff2c95431a", "name": "Museo nuevo", "city": { "_id": "616a9da2ebc9e9ff2c954317", "name": "Miami" }, "date": "2021-10-16T09:39:10.420Z", "__v": 0 } ] }