YAML を Go 構造体にアンマーシャリングする: データが空のままになる理由
YAML を Go 構造体にアンマーシャリングするときは、構造体のフィールドがエクスポートされます。これは、YAML ライブラリがそれらにアクセスできるように、大文字で始まる必要があることを意味します。
指定したコード スニペットを調べてみましょう:
type Config struct { foo_bar string }
このコードでは、フィールド foo_bar は輸出されていない。これを修正するには、コードを次のように更新します。
type Config struct { FooBar string `yaml:"foo_bar"` }
yaml:"foo_bar" タグを追加することで、このフィールドの YAML キーを明示的に指定します。さらに、フィールド名 FooBar がエクスポートされるようになり、アンマーシャリング プロセスで YAML データを構造体にバインドできるようになります。
フィールドがエクスポートされたら、自信を持って YAML データを Config 構造体と FooBar にアンマーシャリングできます。フィールドには正しく入力されます。
以上がYAML アンマーシャリング後に Go 構造体が空になるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。