MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Mangusto encontra objeto estranho retornando


O objeto que você recebe é um Cursor que é um objeto usado para recuperar os resultados reais.

Quando você tem certeza de que sua consulta nunca retornará mais de um objeto (como neste caso em que você consulta pelo sempre exclusivo _id campo), você pode usar db.collection('Tweet').findOne( que retornará apenas esse objeto sem a camada adicional de indireção.

Mas quando sua consulta pode retornar mais de um documento, você precisa usar um cursor. Para resolver o cursor, você pode transformá-lo em uma matriz de documentos usando cursor.toArray :
    db.collection('Tweet').find({}, function (err, cursor){
        cursor.toArray().forEach(function(doc) { 
            console.log(doc);
        });
    })

Esta é a versão mais simples. Para obter mais informações sobre cursores, consulte a documentação vinculada acima.

A propósito:Até agora você usou apenas a funcionalidade do driver nativo. Quando você quiser usar o Mongoose para consultar objetos, talvez queira usar os métodos do objeto de modelo do Mongoose.