En Mongodb tengo este campo:
units: NumberDecimal('1'),Asignado en Ir a:
Units float64 `json:"units"`Estoy tratando de leer los datos de Go con:
var result dbo.Invoice coll := client.Database("hobbit").Collection("customer") filter := bson.D{{"_id", code}} err = coll.FindOne(context.TODO(), filter).Decode(&result) if err != nil { if err == mongo.ErrNoDocuments { return model.Customer{}, fmt.Errorf("invoice %s not found", code) } return model.Customer{}, fmt.Errorf("reading invoice %s from database: %s", code, err) }y me sale este error
Error: error un-marshalling invoice F-3945: error decoding key lines.0.units: cannot decode 128-bit decimal into a float32 or float64 typeTraté de registrar la conversión con bsoncodec :
registryBuilder := bsoncodec.NewRegistryBuilder() registryBuilder.RegisterTypeMapEntry(bsontype.Decimal128, reflect.TypeOf(float64(0)))y sigue dando el mismo error
Debería ser
Units primitive.Decimal128 `json:"units"` Ese es el tipo de datos para NumberDecimal