Récupération des valeurs "_id" avec Mgo et Go
Cette question répond à un problème où la valeur "_id" d'un document MongoDB est systématiquement renvoyé sous forme de chaîne vide lors de l'utilisation de mgo avec Go.
Problème Description :
L'utilisateur a défini une structure pour représenter les documents MongoDB, où le champ "_id" est annoté à la fois avec json:"id" et bson:"_id,omitempty". Lors de la récupération des documents de la base de données, le champ "_id" est toujours défini sur une chaîne vide.
Débogage et solution :
Après avoir examiné le code, il a été a découvert qu'il y avait une erreur subtile dans l'annotation du champ "_id". Dans l'annotation bson:"_id,omitempty", un onglet a été utilisé comme espace au lieu d'un espace. Cela a amené le pilote mgo à interpréter incorrectement l'annotation.
L'extrait de code suivant démontre la syntaxe correcte :
type Article struct { Id bson.ObjectId `json:"id" bson:"_id,omitempty"` }
Avec cette correction, la valeur _id est désormais correctement récupérée de la base de données et retourné comme prévu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!