Anda harus melihat flag inline paket bson (yang didokumentasikan di bawah bson.Marshal). Ini akan memungkinkan Anda untuk melakukan sesuatu seperti ini:
type adminUser struct {
User `bson:",inline"`
Secret string `json:"secret,omitempty" bson:"secret,omitempty"`
}
Namun, sekarang Anda akan melihat bahwa Anda mendapatkan kesalahan kunci duplikat ketika Anda mencoba membaca dari database dengan struktur ini, karena keduanya adminUser dan User berisi kunci secret .
Dalam kasus Anda, saya akan menghapus Secret bidang dari User dan hanya memiliki satu di adminUser .Lalu kapan pun Anda perlu menulis ke secret bidang, pastikan Anda menggunakan adminUser .