así que cuando trato de encontrar elementos en una colección a través de la consola usando el método db.DB_NAME.find({ x: y }, funciona bien. Sin embargo, cuando trato de hacer lo mismo en el código, no funciona.
Quizás vale la pena mencionar que el método findOne funciona muy bien dentro del código.
Consultando a través de la consola
Código:
app.get("/api/customer/:cpf", async (req, res) => { const properties = await Customer.consult(req); console.log(properties); res.status(200); res.end(); });
static async consult(req) { const conn = await client.connect(); const db = conn.db("website"); const cpf = req.params.cpf.toString(); console.log(cpf); const properties = await db.collection("Property").find({ customerCpf: cpf, }); return properties; }
Lo que obtengo de estos fragmentos de código es un objeto enorme y extraño (para mí, un principiante) en mi consola en lugar de los tres objetos esperados.
Bueno, veo que no usas mangosta.
Lo que obtienes de .find()
es un cursor. Necesita convertirlo en una matriz:
const properties = await db.collection("Property").find({ customerCpf: cpf, }).toArray();