Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk mengalih keluar kunci tambahan yang ditambahkan semasa memasukkan struktur bersarang dalam mongodb

Bagaimana untuk mengalih keluar kunci tambahan yang ditambahkan semasa memasukkan struktur bersarang dalam mongodb

王林
王林ke hadapan
2024-02-09 12:06:181028semak imbas

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

Editor PHP Apple membawakan anda artikel tentang cara mengalih keluar kunci tambahan yang ditambahkan semasa memasukkan struktur bersarang dalam mongodb. Apabila menggunakan mongodb untuk menyimpan data, kadangkala kami akan menambah beberapa kunci tambahan pada struktur bersarang untuk memudahkan pertanyaan dan operasi. Tetapi bagaimanakah kita mengalih keluar kunci tambahan ini apabila kita tidak memerlukannya lagi? Artikel ini akan memberikan anda kaedah yang mudah dan berkesan untuk membantu anda mengalih keluar kekunci tambahan yang ditambahkan dengan mudah semasa memasukkan struktur bersarang dalam mongodb. Mari lihat!

Kandungan soalan

Anggap ini definisi struktur saya,

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
}

Apabila kandungan disimpan dalam MongoDB, ia disimpan sebagai

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

Tetapi JSON unmarshalling kembali

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

Bagaimana untuk mengalih keluar kunci tambahan separa kandungan dalam MongoDB?

Penyelesaian

Pertama, anda perlu mengeksport medan struktur, jika tidak pemandu akan melangkau medan ini.

Jika anda tidak mahu membenamkan dokumen dalam MongoDB, gunakan pilihan ,inline teg 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"`
}

Masukkan nilai ini:

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

Dokumen ini akan dijana dalam MongoDB:

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

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar kunci tambahan yang ditambahkan semasa memasukkan struktur bersarang dalam mongodb. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam