Vous devriez jeter un coup d'œil à l'indicateur en ligne du paquet bson (qui est documenté sous bson.Marshal). Il devrait vous permettre de faire quelque chose comme ceci :
type adminUser struct {
User `bson:",inline"`
Secret string `json:"secret,omitempty" bson:"secret,omitempty"`
}
Cependant, vous remarquerez maintenant que vous obtenez des erreurs de clé en double lorsque vous essayez de lire à partir de la base de données avec cette structure, car à la fois adminUser
et User
contenir la clé secret
.
Dans votre cas, je supprimerais le Secret
champ de User
et n'avoir que celui dans adminUser
.Ensuite, chaque fois que vous avez besoin d'écrire dans le secret
champ, assurez-vous d'utiliser un adminUser
.