Docs Menu
Docs Home
/ /

Usar etiquetas de struct

Puede especificar la forma en que el controlador Go convierte las estructuras Go a BSON mediante el uso de etiquetas de estructura.

Tip

Lea el Ejemplos de uso para aprender a ejecutar este ejemplo.

El siguiente código declara una estructura de tipo BlogPostEsta estructura contiene una etiqueta que asigna el campo WordCount al nombre de campo BSON word_count. De forma predeterminada, el controlador serializa los demás campos con la minúscula del nombre de campo de la estructura:

type BlogPost struct {
Title string
Author string
WordCount int `bson:"word_count"`
LastUpdated time.Time
Tags []string
}

El siguiente ejemplo crea una instancia BlogPost y la inserta en la colección posts. Durante la operación de inserción, el controlador interpreta la etiqueta struct para serializar el campo struct WordCount como word_count:

Tip

Lea los ejemplos de uso para aprender cómo ejecutar este ejemplo.

coll := client.Database("sample_training").Collection("posts")
post := BlogPost{
Title: "Annuals vs. Perennials?",
Author: "Sam Lee",
WordCount: 682,
LastUpdated: time.Now(),
Tags: []string{"seasons", "gardening", "flower"},
}
// Inserts a document describing a blog post into the collection
_, err = coll.InsertOne(context.TODO(), post)
if err != nil {
panic(err)
}

Vea un ejemplo completamente ejecutable.

Después de ejecutar el ejemplo completo, podrá encontrar el siguiente documento en la colección posts:

{
"_id" : ObjectId("..."),
"title" : "Annuals vs. Perennials?",
"author" : "Sam Lee",
"word_count" : 682,
"lastupdated": ...,
"tags" : ["seasons", "gardening", "flower"]
}

Para ver un ejemplo sobre cómo encontrar un documento, consulte Buscar un documento.

Para obtener más información sobre el uso de etiquetas de estructura, la conversión a/desde BSON y el manejo de posibles errores,consulte trabajar con BSON.

Volver

Ejecute un comando