MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

MongoError :impossible de modifier le _id d'un document

En regardant votre erreur mongo, le problème n'est pas avec mongo, il fait simplement ce qu'il est censé faire. Il avait un objet avec _id de type ObjectId :ObjectId('xxx') et maintenant vous essayez de changer cet objet pour avoir un _id de type String (_id :"5083e4a7f4c0c4e270000001") et que Mongo n'aime apparemment pas.

Donc, la question est :pourquoi l'objet avait-il un identifiant de type ObjectId en premier lieu ? Comment l'as-tu réglé la première fois ? Si vous avez utilisé une autre méthode pour l'initialiser (je suppose côté serveur), vous devez définir le type d'identifiant sur une chaîne afin qu'il soit identique à celui provenant de votre bibliothèque de scripts. Si vous voulez qu'il reste un ObjectId, vous devrez convertir la chaîne provenant de votre script en un ObjectId avant de l'enregistrer dans Mongo.

HTH.