sql >> Database teknologi >  >> NoSQL >> MongoDB

MongoDB kan ikke opdatere dokumentet, fordi _id er streng, ikke ObjectId

Fordi du ikke kan ændre _id felt, er en bedre tilgang blot at fjerne det pågældende felt fra dit kort objekt i stedet for at konvertere det til et ObjectId.

Så dette:

delete map._id;

i stedet for dette:

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

Hvis du vil returnere det opdaterede objekt, som du forsøger med res.send(map); , bør du bruge findAndModify i stedet for opdatering så du har adgang til det resulterende dokument og ikke kun det, der blev postet.




  1. Flaske:videresende baggrundsarbejderjob (rq, redis)

  2. Bulk Upsert med MongoDB Java 3.0-driver

  3. Redis Support på sekundært indeks

  4. Lagerforespørgsel med en listeparameter i Spring Data MongoDB