Modèle de golang

Modèle de golang
Les modèles sont une fonctionnalité puissante qui vous permet de créer une sortie personnalisée et dynamique. Par exemple, si vous créez une page Web, vous pouvez utiliser des modèles pour injecter le nom d'utilisateur d'un utilisateur de la base de données à l'interface frontale.

En Go, vous avez deux packages de modèles: texte / modèle et HTML / modèle. Bien qu'ils fournissent tous deux une interface étroitement similaire, le package HTML / modèle peut générer du code HTML et minimiser les défauts de sécurité dans l'application.

Dans cet article, nous discuterons de la façon d'utiliser les packages de modèles dans Go.

Composants d'un modèle

Il y a trois principales composantes d'un modèle:

Actions

Évaluations des données se réfèrent aux fonctions, aux boucles, aux évaluations de données DAN. Ils sont désignés par l'utilisation de contreventements doubles comme . Un élément de point à l'intérieur d'un modèle représente l'élément racine. En utilisant des actions de modèle, vous pouvez déterminer la sortie finale en fonction d'une expression spécifique.

Conditions

Vous pouvez également inclure si… Else construit dans un modèle. Un exemple de si… else vérifiez un modèle est comme indiqué:

si .condition // exécuter ceci else si .Condition // Exécutez ce bloc else // exécutez-moi end

La syntaxe ci-dessus exécutera le premier bloc si la première condition est vraie, sinon, vérifiez la condition 2 et si elle est vraie, exécutez le deuxième bloc. Si aucun n'est vrai, exécutez le bloc else.

Boucles

Les boucles sont également prises en charge à l'intérieur d'un modèle. Par exemple, vous pouvez parcourir une tranche à l'intérieur d'un modèle comme indiqué:

gamme .var // do else // do end

Le VAR peut être n'importe quel type itérable tel qu'un tableau, une tranche ou une carte.

Créer, analyser et utiliser des modèles

Il existe trois principales méthodes utiles pour travailler avec des modèles:

  1. Nouveau - Crée un nouveau modèle non défini.
  2. Parse - Parses comme la chaîne de modèle spécifiée et renvoie un modèle.
  3. Exécuter - Applique un modèle analysé à une structure de données et écrit le résultat.

Un exemple de la façon d'utiliser ces méthodes est comme indiqué:

package principal
importer (
"enregistrer"
"OS"
"texte / modèle"
)
// Définir Stuct pour maintenir les données
Tapez les utilisateurs struct
// des champs
Id, âge int
Chaîne de noms

func main ()
// Créer une instance de l'objet
user1: = utilisateurs 1, 28, "Rick Tewk"
Temp: = modèle.Nouveau modèle")
temp, _ = temp.Parse ("Salut .Nom, vous êtes à index .Id et .Âge ans!")
err: = temp.Exécuter (OS.Stdout, user1)
Si err != nil
enregistrer.Fatal (euh)

L'exemple ci-dessus utilise les nouvelles méthodes d'analyse et d'exécution du package texte / modèle pour analyser et exécuter un modèle.

HTML / Modèle

Le package HTML / modèle fournit une interface similaire à celle du package de texte / modèle. Cependant, il utilise des modèles basés sur les données pour la sortie.

Un exemple est comme indiqué:

Créer un index.Fichier HTML comme:







Html tempant



Salut .Nom, vous êtes à index .Id et .Âge




Nous pouvons ensuite ajouter des modèles à l'intérieur du fichier Go en tant que:

package principal
importer (
"FMT"
"OS"
"Html / modèle"
)
// // Définir Stuct pour maintenir les données
Tapez les utilisateurs struct
// des champs
Id, âge int
Chaîne de noms

func main ()
user1: = utilisateurs 1, 28, "Rick Tewk"
temp, err: = modèle.Parsefiles ("Index.html ")
err = temp.Exécuter (OS.Stdout, user1)
fmt.Println (err)

Dans l'exemple ci-dessus, nous utilisons la méthode ParseFiles () pour ajouter des modèles au fichier d'index. Le code ci-dessus doit retourner:







Html tempant



Salut Rick Tewk, vous êtes à l'index 1 et 28




Remarquez les fichiers HTML les informations de la structure dans le fichier go

Conclusion

Dans cet article, nous avons exploré comment inclure le contenu dynamique à l'aide de packages de texte / modèle et HTML / modèle dans Go.

Merci d'avoir lu!