bsonパッケージのインラインフラグ(bson.Marshalで文書化されています)を確認する必要があります。これにより、次のようなことができるようになります。
type adminUser struct {
User `bson:",inline"`
Secret string `json:"secret,omitempty" bson:"secret,omitempty"`
}
ただし、この構造でデータベースから読み取ろうとすると、両方のadminUserが原因で、重複するキーエラーが発生することに気付くでしょう。 およびUser キーsecretが含まれています 。
あなたの場合、Secretを削除します Userのフィールド adminUserに1つだけあります 。その後、secretに書き込む必要があるときはいつでも フィールドでは、必ずadminUserを使用してください 。