Dernier élément dans un modèle de la gamme
Donné le modèle:
{{range $i, $e := .SomeField}}
{{if $i}}, {{end}}
$e.TheString
{{end}}
Cela peut sortie:
one, two, three
Si, toutefois, je veux de sortie:
one, two, and three
J'aurais besoin de savoir quel est le dernier élément dans la gamme au-dessus.
Je peux définir une variable qui contient la longueur du tableau .SomeField
, mais qui sera toujours 3, et le $i
valeur au-dessus de ne jamais arriver à 2. Et vous ne pouvez pas effectuer de l'arithmétique dans les modèles à partir de ce que j'ai vu.
De la détection de la dernière valeur dans un modèle de la gamme possible? Des acclamations.
Vous devez vous connecter pour publier un commentaire.
Ce n'est probablement pas la solution la plus élégante, mais c'est le mieux que j'ai pu trouver:
http://play.golang.org/p/MT91mLqk1s
Remarque: Vous pouvez aussi le faire sans refléter l'utilisation de la
len
fonction (crédit à Russ Cox):http://play.golang.org/p/V94BPN0uKD
c.f.
Nous avons eu le même problème aujourd'hui, lorsque l'on travaille avec le format dans le menu fixe inspecter commande.
La meilleure façon d'obtenir le dernier élément sans avoir à Docker a été (l'expression a été divisé en lignes pour faciliter la lecture):
Donc, dans notre cas, nous avons besoin du nom de l'image sans registre de l'adresse et de la version.
Par exemple, le nom de l'image comme de registre.domaine.local/images/nginx:dernière devient nginx.
P. S: Vous avez besoin d'Aller >= 1.11 pour faire le travail (https://github.com/golang/go/issues/10608)
P. P. S: La question était de savoir Aller de modèle, mais pour ceux qui ont eu les mêmes problèmes avec menu fixe ici les exemples de configuration:
1) Utilisation de modèle dans
daemon.json
cat /etc/docker/daemon.json
2) à l'Aide de Go modèle avec
-f
option:ERROR: for ... Cannot start service ...: failed to initialize logging driver: error creating logger: error creating loki logger: loki: invalid external labels
. Pouvez-vous fournir des code exact?