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

王林
Lepaskan: 2024-02-09 12:06:18
ke hadapan
1036 orang telah melayarinya

如何删除在 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
}
Salin selepas log masuk

Apabila kandungan disimpan dalam MongoDB, ia disimpan sebagai

{
  "_id": ObjectID,
  "partialcontent": {
    "key": "...",
    "value": "..."
  }
}
Salin selepas log masuk

Tetapi JSON unmarshalling kembali

{
  "_id": ObjectID,
  "key": "...",
  "value": "..."
}
Salin selepas log masuk

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"`
}
Salin selepas log masuk

Masukkan nilai ini:

v := Content{
    ID: "abc",
    PartialContent: PartialContent{
        Key:   "k1",
        Value: "v1",
    },
}
Salin selepas log masuk

Dokumen ini akan dijana dalam MongoDB:

{ "_id" : "abc", "key" : "k1", "value" : "v1" }
Salin selepas log masuk

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!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!