Go テンプレートの最初の配列要素の .Name フィールドへのアクセス
HTML テンプレートでは、アクセスする必要がある状況に直面することがあります。配列の最初のインデックスの値。ただし、特に配列内の特定のフィールドを取得しようとする場合は、単に「index」関数を使用するだけでは不十分な場合があります。
この課題に対処するには、正しい構文には式をグループ化し、「.Name」セレクターを適用する必要があります。目的の値を取得します。次のテンプレートを考えてみましょう:
<div>Foobar {{ (index .Doc.Users 0).Name }}</div>
このテンプレートでは、「.Doc.Users」配列に「Name」フィールドを持つオブジェクトが含まれています。 「index .Doc.Users 0」式をグループ化し、「.Name」を適用すると、最初の配列要素の「Name」フィールドが効果的に選択されます。
実際の例として、次のようなオブジェクトがあると想像してください。ユーザーの配列:
import "fmt" import "os" import "text/template" type User struct { Name string Email string } func main() { t := template.Must(template.New("").Parse( `<div>Foobar {{ (index .Doc.Users 0).Name }}</div>`)) m := map[string]interface{}{ "Doc": map[string]interface{}{ "Users": []User{ {Name: "Bob", Email: "[email protected]"}, {Name: "Alice", Email: "[email protected]"}, }, }, } fmt.Println(t.Execute(os.Stdout, m)) }
このコードを Go プレイグラウンドで実行すると、次の出力が得られます:
<div>Foobar Bob</div>
これは、「.Name」の効果的な取得を示しています。 Go テンプレート内の「.Doc.Users」配列の最初の要素の「」フィールド。
以上がGo テンプレートの最初の配列要素の名前フィールドにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。