Maison >développement back-end >Golang >Pourquoi mon champ '_id' est-il vide lors de la récupération d'objets Article à l'aide de mgo ?

Pourquoi mon champ '_id' est-il vide lors de la récupération d'objets Article à l'aide de mgo ?

DDD
DDDoriginal
2024-11-06 18:27:02528parcourir

Why is my

Impossible de récupérer la valeur "_id" dans Go avec Mgo

Votre code tente de récupérer une liste d'objets Article à partir d'une base de données en utilisant le bibliothèque mgo. Cependant, lors de l'impression du résultat, vous découvrez que le champ "_id" est systématiquement vide. Cela peut être attribué à une erreur subtile dans la définition de votre structure.

Dans la structure de votre article, la ligne :

Id bson.ObjectId `json:"id" bson:"_id,omitempty"`

utilise incorrectement un caractère de tabulation au lieu d'un espace entre le json et le bson balises. Cette erreur de syntaxe peut amener mgo à mal interpréter la définition du champ.

Pour résoudre ce problème, remplacez simplement le caractère de tabulation par un espace, ainsi la ligne devient :

Id bson.ObjectId `json:"id" bson:"_id,omitempty"`

Avec cette correction, mgo analysera désormais correctement la définition de la structure et récupérera correctement les valeurs du champ "_id".

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn