Mentakrifkan Berbilang Tag Nama dalam Struktur
Seperti yang anda temui, anda mungkin perlu mentakrifkan berbilang tag nama untuk medan struct untuk menampung format bersiri yang berbeza, seperti BSON dan JSON. Contoh yang disediakan menunjukkan keperluan untuk mengekodkan struct kepada JSON sambil mengekalkan nama medan huruf kecil, walaupun nama medan BSON adalah huruf besar.
Penyelesaian kepada masalah ini ialah memisahkan pemisah rentetan tag dengan ruang dan bukannya koma. Pengubahsuaian berikut pada kod anda akan menyelesaikan isu:
type Page struct { PageId string `bson:"pageId" json:"pageId"` Meta map[string]interface{} `bson:"meta" json:"meta"` }
Mengikut dokumentasi pakej reflect, rentetan teg ialah gabungan pasangan "key:'value'" yang dipisahkan oleh ruang. Setiap kunci ialah rentetan bukan kosong yang tidak boleh mengandungi aksara kawalan, ruang, petikan atau titik bertindih. Setiap nilai disertakan dalam petikan berganda dan mengikuti sintaks literal rentetan Go.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mentakrifkan Teg Nama Berbilang untuk Medan Struct dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!