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 中国語 Web サイトの他の関連記事を参照してください。