Heim >Backend-Entwicklung >Golang >Warum ist mein Feld „_id' leer, wenn ich mgo in Go verwende?
Fehlerbehebung beim Abrufen des Feldwerts „_id“ in Go mit mgo
Dieser Artikel befasst sich mit dem Problem, dass der Feldwert „_id“ nicht abgerufen werden kann bei Verwendung von mgo mit Go. Das Problem trat beim Versuch auf, Daten aus einer MongoDB-Datenbank abzurufen.
Erstens definiert das Code-Snippet eine Struktur namens „Article“, die ein Dokument in der Datenbank darstellt. Es enthält Felder wie „_id“, „title“, „author“ und andere.
Die Funktion „AllArticles()“ ruft alle Artikel aus der Datenbank ab und speichert sie im Slice „articles“. Beim Drucken der Ergebnisse wurde festgestellt, dass das Feld „_id“ eine leere Zeichenfolge ist.
Um dieses Problem zu beheben, wurde festgestellt, dass in der Strukturdefinition ein Abstandsproblem auftrat. Der Code hatte ursprünglich ein Tabulatorzeichen zwischen „json:“ und „bson:“, aber es hätte stattdessen ein Leerzeichen sein sollen.
Der korrigierte Code lautet:
type Article struct { Id bson.ObjectId `json:"id" bson:"_id,omitempty"`
Das obige ist der detaillierte Inhalt vonWarum ist mein Feld „_id' leer, wenn ich mgo in Go verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!