MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

In mongodb-go-driver, wie man BSON in eine Struktur marshallt/unmarshallt

Das neuere "github.com/mongodb/mongo-go-driver" erwartet Objekt-IDs, die als

definiert sind
type Application struct {
    ID      *primitive.ObjectID `json:"ID" bson:"_id,omitempty"`
}

Dies wird in JSON "ID":"5c362f3fa2533bad3b6cf6f0" serialisiert und so erhalten Sie die ID aus dem Insert-Ergebnis

if oid, ok := res.InsertedID.(primitive.ObjectID); ok {
    app.ID = &oid
}

Aus Zeichenfolge konvertieren

appID := "5c362f3fa2533bad3b6cf6f0"    
id, err := primitive.ObjectIDFromHex(appID)
if err != nil {
    return err
}
_, err = collection.DeleteOne(nil, bson.M{"_id": id})

In Zeichenfolge umwandeln

str_id := objId.Hex()