在 Go 结构中定义多个字段标签
要从 MongoDB 数据库检索数据并将其编码为 JSON,您需要定义一个具有适用于 MongoDB 和 JSON 序列化的适当标签的结构。但是,您会遇到一个问题,即 JSON 编码字段以大写形式显示,而不是所需的小写形式。为了解决这个问题,您需要在字段的标签字符串中定义多个名称标签。
解决此问题的方法是使用空格而不是逗号作为标签字符串分隔符。以下更新的代码演示了这种方法:
type Page struct { PageId string `bson:"pageId" json:"pageId"` Meta map[string]interface{} `bson:"meta" json:"meta"` }
根据 Go 反射包文档,标记字符串遵循特定约定:
“按照约定,标记字符串是可选空格的串联-分隔的键:“值”对。”
遵守此约定允许您为单个标签字符串中的每个字段定义多个名称标签。名称标签的顺序并不重要,并且应使用 " 字符引用值。
以上是如何在 Go 结构中定义多个 JSON 和 BSON 标签?的详细内容。更多信息请关注PHP中文网其他相关文章!