Как получить ключ с карты
Я работаю над го шаблона. Имея некоторую карту в .
Я знаю, как получить значение, пока я знаю ключ.
"Map value: {{ printf "%s" .key1 }}"
Как получить имя ключа из шаблона? Я ожидаю, может быть, что-то вроде
"Map key: {{ printf "%s" (keys .)[0] }}"
2 ответа
Решение
Как заметил @Adrian:
{{ range $key, $val := . }}
key: {{ $key }}; value: {{ $val }}
{{ end }}
Но это было трудно понять, просто из документации диапазона
Поскольку вопрос помечен
consul-template
... синтаксис шаблонов Consul / Vault (указан
.Data
это карта):
{{ index .Data "complex.key.name" }}
Это полезно, когда имя ключа сложное (например, содержит точки) и
{{ .Data.complex.key.name }}
интерпретируется как доступ к вложенным полям.