Maison >développement back-end >Golang >Transmettez l'intégralité du yaml de la valeur au modèle sans remplir les champs vides avec null

Transmettez l'intégralité du yaml de la valeur au modèle sans remplir les champs vides avec null

WBOY
WBOYavant
2024-02-11 09:30:17748parcourir

将整个 yaml 从值传递到模板,而不用 null 填充空字段

Dans cet article, je vais présenter une astuce intéressante consistant à transmettre l'intégralité du YAML de la valeur au modèle sans utiliser null pour remplir les champs vides. Cette technique peut améliorer la lisibilité et la maintenabilité du code, tout en réduisant la quantité de code. Grâce à l'explication de cet article, les lecteurs comprendront comment utiliser cette technique et apprendront à l'appliquer dans leurs propres projets. Explorons ensemble !

Contenu de la question

J'essaie de transmettre une partie donnée de values.yaml dans un modèle de barre :

receivers:
    test1:
      test2:
        test3:
    test4:

Utiliser la fonction :

{{ .values.receivers |到yaml | nindent 2}}

Le code est placé au bon format, mais les champs vides sont renseignés avec "null" :

65bdff7ed5février

Y a-t-il un moyen d'empêcher que cela se produise ?

J'attends le bon modèle sans insérer de champs vides.

Solution

Aucun champ n'est inséré. Le processeur remplace simplement la valeur déjà existante par une sérialisation différente avec la même sémantique.

test3: sans valeur dans yaml est analysé comme ayant une valeur scalaire vide. l'architecture de base yaml définit ce qui suit pour les valeurs nulles : p>

Expression régulière Résolu à taguer
null | Null | NULL | ~ tag:yaml.org,2002:null
/* Empty */ tag:yaml.org,2002:null

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer