У меня есть этот код в Golang
var usu models.Usuario
condicion := bson.M{
"email":email,
}
err := col.FindOne(context.TODO(), condicion).Decode(&usu)
if err != nil {
log.Printf("Login instatisfactorio por error "+err.Error())
return usu, err
}
И у меня есть эта ошибка
2020-02-04 16:13:10 default [20200203t231424] 2020 / 02/04 16:13:10 Ошибка входа в систему instatisfactorio por не может декодировать objectID в массив
Ошибка:
type Usuario struct {
ID bson.RawValue `bson:'_id' json:'id, omitempty'`
Как я могу ДЕКОДИТЬ результаты, содержащие "bson" .RawValue "? Мне нужен идентификатор пользователя
Спасибо
ОБНОВЛЕНИЕ: Привет, у меня теперь .Hex()
работает, но в результате у меня '00000000000000'. Смотреть.
var resultado models.Usuario
err := col.FindOne(context.TODO(), condicion).Decode(&resultado)
log.Println("Nombre : "+resultado.Nombre)
log.Println("Apellido : "+resultado.Apellidos)
log.Println("ID : "+resultado.ID.Hex())
А это модель
type Usuario struct {
ID primitive.ObjectID `bson:'_id' json:'_id, omitempty'`
Nombre string `bson:"nombre" json:"nombre,omitempty"`
Apellidos string `bson:"apellidos" json:"apellidos,omitempty"`
Password string `bson:"password" json:"password,omitempty"`
Email string `bson:"email" json:"email"`
}
У меня есть это в базе данных