Этот, казалось бы, простой, но это сводит меня с ума.Перейти Шаблоны: Возможны ли вложенные диапазоны?
Как сделать ссылку на элемент структуры выше в области внутри вложенного диапазона в шаблонах golang?
Пример:
type Foo struct {
Id string
Name string
}
type Bar struct {
Id string
Name string
}
var foos []Foo
var bars []Bar
// logic to populate both foos and bars
В шаблоне:
{{range .foos}}
<div>Foo {{.Name}}</div>
<div>
{{range ..bars}}
<div>Bar {{.Name}} <input type="text" name="ids_{{..Id}}_{{.Id}}" /></div>
{{end}}
</div>
{{end}}
Очевидно ..bars и ..Id не работают, но, надеюсь, мое намерение ясно. Я хотел бы повторить все комбинации Foo и Bar и сгенерировать элемент формы с построением имени как с идентификатором Foo, так и с идентификатором Bar.
Проблема заключается в том, что кажется, что это невозможно:
- баров доступа внутри объема Фооса диапазон,
- Id Access Foo от внутренней рамки диапазона бара
У меня есть временное обходное решение, поставив кучу лишних полей в обеих структурах, но это кажется мне очень уродливым, нарушает СУХОЙ, и в целом кажется очень неправильным.
Есть ли способ с шаблонами golang делать то, что я хотел бы сделать?
Спасибо, этот подход отлично работает. – haploid