Maison  >  Article  >  développement back-end  >  Comment accéder au champ structurel de l'élément de carte dans un modèle HTML avec Go ?

Comment accéder au champ structurel de l'élément de carte dans un modèle HTML avec Go ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-10-24 07:27:02885parcourir

How to Access Struct Field of Map Element in HTML Template with Go?

Accès au champ Struct de l'élément de carte dans un modèle HTML avec Go

Lorsque vous travaillez avec des cartes et des structures dans des modèles Go, il est important de vous assurer que les champs sont accessibles à partir du modèle. Dans ce cas, le taskMap contient les structures de tâches comme valeurs et les descriptions de tâches sont accessibles à l'aide de ".desc".

Pour accéder aux champs du modèle, ils doivent être exportés. Ceci est réalisé en mettant en majuscule le nom du champ dans la définition de la structure :

<code class="go">type Task struct {
   cmd string
   args []string
   Desc string // Capitalized to export the field
}</code>

De même, mettez à jour les entrées de carte et les références de modèle en mettant en majuscule "Desc":

<code class="go">var taskMap = map[string]Task{
    "find": Task{
        cmd: "find",
        args: []string{"/tmp/"},
        Desc: "find files in /tmp dir",
    },
    "grep": Task{
        cmd: "grep",
        args:[]string{"foo","/tmp/*", "-R"},
        Desc: "grep files match having foo",
    },
}

<html>
{{range $key, $value := .}}
   <li>Task Name:        {{$key}}</li>
   <li>Task Value:       {{$value}}</li>
   <li>Task description: {{$value.Desc}}</li>
{{end}}
</html></code>

Avec ces modifications, le modèle affichera avec succès le champ de description pour chaque tâche.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn