sql >> Database >  >> NoSQL >> MongoDB

Mangoest vindt terugkerend vreemd voorwerp

Het object dat u ontvangt is een Cursor wat een object is dat wordt gebruikt om de werkelijke resultaten op te halen.

Als u er zeker van bent dat uw zoekopdracht nooit meer dan één object zal retourneren (zoals in dit geval waarbij u een zoekopdracht uitvoert met de altijd unieke _id veld), kunt u db.collection('Tweet').findOne( .) gebruiken die alleen dat object retourneert zonder de extra laag indirectheid.

Maar wanneer uw zoekopdracht mogelijk meer dan één document kan retourneren, moet u een cursor gebruiken. Om de cursor op te lossen, kunt u er een array van documenten van maken door cursor.toArray te gebruiken :

    db.collection('Tweet').find({}, function (err, cursor){
        cursor.toArray().forEach(function(doc) { 
            console.log(doc);
        });
    })

Dit is de meest eenvoudige versie. Raadpleeg de hierboven gelinkte documentatie voor meer informatie over cursors.

Trouwens:tot nu toe heb je alleen de functionaliteit van de native driver gebruikt. Als u Mongoose wilt gebruiken om objecten te doorzoeken, wilt u misschien de methoden van het Mongoose-modelobject gebruiken.




  1. C# MongoDB:hoe een domeinobject correct toewijzen?

  2. Controleer of het document bestaat in mongodb met es7 async/wait

  3. MongoDb custom collectie serializer

  4. Mongodb TTL verloopt documenten vroegtijdig