Ich versuche, einige Daten mit Go in MongoDB einzufügen.
Hier ist die Datenstruktur:
%Vor%Dies ist meine Einfügefunktion:
%Vor%Und schließlich nenne ich es so:
%Vor% Das Problem ist, dass ich erwartet habe, dass meine bson
-Tags auf magische Weise funktionieren, aber das tun sie nicht.
Anstatt dass Daten wie folgt gespeichert werden:
{"_id": Objekt-ID ("53700d9cd83e146623e6bfb4"), "resource_id": 7660708, "Wort": "Foo" ...}
Es wird gespeichert als:
{"_id": Objekt-ID ("53700d9cd83e146623e6bfb4"), "id": "", "resourceid": 7660708, "Wort": "Foo" ...}
Wie kann ich das beheben?
Ändern Sie den Eintrag in:
%Vor%Die Syntax für Struct Tags verwendet keine Kommas zwischen Tags. Ich glaube, das sollte es beheben.
Anstelle von Count () und Insert () können Sie UpsertId verwenden, was genau das tut, wenn eine ID existiert, wird der Datensatz ersetzt, wenn er nicht eingefügt wird.
Insert () mit einer leeren ObjectId lässt MongoDB die ID-Zuweisung handhaben.
Bearbeiten: Die Anzahl der Abfragen wurde falsch gelesen. Du hast dort auch einen Fehler. Es sollte "resource_id" nicht "resourceid" sein, da Sie angegeben haben, dass das bson-Feld den Namen "resource_id"
hat