sql >> Databasteknik >  >> NoSQL >> MongoDB

MongoDB kan inte uppdatera dokument eftersom _id är sträng, inte ObjectId

Eftersom du inte kan ändra _id är ett bättre tillvägagångssätt att helt enkelt ta bort det fältet från din karta objekt istället för att konvertera det till ett ObjectId.

Så detta:

delete map._id;

istället för detta:

map._id = new ObjectID.createFromHexString( map._id);

Om du vill returnera det uppdaterade objektet som du försöker med res.send(map); , bör du använda findAndModify istället för uppdatering så att du har tillgång till det resulterande dokumentet och inte bara det som postades.




  1. NodeJS-anslutningsfel med mongoDB

  2. MongoDB C# Array indexerar eller indexerar inre objekt av arrayer

  3. SignalR kan inte ansluta till Azure Redis på SSL

  4. MongoDB:s prestanda på aggregeringsfrågor