Maison  >  Article  >  développement back-end  >  Comment supprimer les clés supplémentaires ajoutées lors de l'insertion d'une structure imbriquée dans mongodb

Comment supprimer les clés supplémentaires ajoutées lors de l'insertion d'une structure imbriquée dans mongodb

王林
王林avant
2024-02-09 12:06:181028parcourir

如何删除在 mongodb 中插入嵌套结构时添加的附加键

éditeur php Apple vous propose un article sur la façon de supprimer les clés supplémentaires ajoutées lors de l'insertion de structures imbriquées dans mongodb. Lorsque nous utilisons mongodb pour stocker des données, nous ajoutons parfois des clés supplémentaires à la structure imbriquée pour faciliter les requêtes et les opérations. Mais comment supprimer ces clés supplémentaires lorsque nous n’en avons plus besoin ? Cet article vous fournira une méthode simple et efficace pour vous aider à supprimer facilement les clés supplémentaires ajoutées lors de l'insertion de structures imbriquées dans mongodb. Nous allons jeter un coup d'oeil!

Contenu de la question

Supposons qu'il s'agisse de ma définition de structure,

type partialContent struct {
  key   string   `json:"key" bson"key"`
  value string   `json:"value" bson:"value"`
}

type content struct {
  id string `json:"id" bson:"_id,omitempty"`
  partialContent
}

Lorsque content est stocké dans MongoDB, il est stocké sous

{
  "_id": ObjectID,
  "partialcontent": {
    "key": "...",
    "value": "..."
  }
}

Mais la désorganisation JSON revient

{
  "_id": ObjectID,
  "key": "...",
  "value": "..."
}

Comment supprimer des clés supplémentaires partialcontent dans MongoDB ?

Solution

Tout d'abord, vous devez exporter les champs de structure, sinon le pilote ignorera ces champs.

Si vous ne souhaitez pas intégrer le document dans MongoDB, utilisez l'option ,inline balise bson :

type PartialContent struct {
    Key   string `json:"key" bson"key"`
    Value string `json:"value" bson:"value"`
}

type Content struct {
    ID             string `json:"id" bson:"_id,omitempty"`
    PartialContent `bson:",inline"`
}

Insérez cette valeur :

v := Content{
    ID: "abc",
    PartialContent: PartialContent{
        Key:   "k1",
        Value: "v1",
    },
}

Ce document sera généré dans MongoDB :

{ "_id" : "abc", "key" : "k1", "value" : "v1" }

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer