Einfügen von Daten in MongoDB mit mgo

9

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?

    
if __name__ is None 11.05.2014, 23:59
quelle

2 Antworten

11

Ändern Sie den Eintrag in:

%Vor%

Die Syntax für Struct Tags verwendet keine Kommas zwischen Tags. Ich glaube, das sollte es beheben.

    
TrevorSStone 12.05.2014, 02:40
quelle
7
%Vor%

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     
user2312578 12.05.2014 02:49
quelle

Tags und Links