sql >> Database >  >> NoSQL >> MongoDB

Hoe selecteer ik een mongo-subdocument op id met mangoest?

Volgens onze discussie hebben we de oorzaak gevonden door

db.locations.update({ name: 'Starcups' }, 
                    { $push: { 
                         reviews: { 
                            author: 'Simon Holmes', 
                            id: ObjectId(), // issue is here
                            rating: 5, ... } } })

id: ObjectId() maakt id . aan veld in het subdocument en zonder _id veld in de reviews subdocument.

id() methode wordt gebruikt om te documenterenArrays hebben een speciale id methode om een ​​document op te zoeken aan de hand van zijn _id . Aangezien er geen _id . is veld in reviews documentarray, werkt het niet goed.

Verwijder a.u.b. id: ObjectId() van uw code.



  1. automatisch verhogen met loopback.js en MongoDB

  2. Waar moet ik de --rest optie voor MongoDB toevoegen?

  3. Hoe een genest object te verwijderen op basis van zijn ObjectId?

  4. 2 Helm-kaarten met gedeelde Redis-afhankelijkheid