Maison >développement back-end >Golang >Comment transmettre des documents BSON dans Go Lang pour l'insertion MongoDB ?

Comment transmettre des documents BSON dans Go Lang pour l'insertion MongoDB ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-03 06:47:10448parcourir

How to Pass BSON Documents in Go Lang for MongoDB Insertion?

Transmission de documents BSON en Go Lang

Lorsque vous travaillez avec MongoDB en Go Lang, la construction et la transmission de documents BSON peuvent poser des défis. Dans cet article, nous approfondirons les spécificités de ces tâches, en utilisant le package mgo pour les interactions MongoDB.

Problème :

Vous essayez de passer un Document BSON créé dans account.go vers dbEngine.go pour insertion dans MongoDB. Cependant, vous rencontrez l'erreur : "Impossible de marshaler l'interface {} en tant que document BSON."

Solution :

Pour éviter cette erreur, il n'est pas nécessaire de le faire manuellement créer un document BSON. Au lieu de cela, suivre ces étapes simplifiera le processus :

  1. Définissez une structure dans account.go :

    • Créez une structure appelée Account. représentant la structure du document.
    • Annotez les champs de structure avec des balises bson pour spécifier leurs noms de champs BSON correspondants (par exemple, "_id" : bson.ObjectId bson:"_id"`").
  2. Mettre à jour la fonction d'insertion dans dbEngine.go :

    • Changez le type de paramètre de la fonction Insert en interface{}.
    • Au sein de la fonction, établissez un Connexion MongoDB à l'aide de la fonction mgo.Dial.
    • Obtenez un handle de collection à l'aide de session.DB("db_name").C("collection_name").
    • Effectuez l'insertion à l'aide de c.Insert( document).
  3. Utilisation dans votre Application :

    • Initialisez une instance de la structure Account.
    • Attribuez des valeurs aux champs de structure.
    • Transmettez la référence de la structure Account (par exemple, &acc ) au dbEngine.Insert fonction.

En adhérant à ces étapes, vous pouvez éliminer l'erreur de marshalling et transmettre efficacement les documents BSON pour insertion dans MongoDB à l'aide de Go Lang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn