Я прочитал здесь много постов, связанных с шаблонами Go, но не могу найти то, что ищу.
У меня есть эти 2 структуры, которые я не могу изменить, поскольку они используютсяВ другом месте в этом проекте я помогаю с:
type Schedule struct {
Description string
ControlNights int
PlayNights int
StartDay int
Combos []Combo
}
type Combo struct {
From time.Time
Every int
Until time.Time
Sounds []string
Volumes []int
Waits []int
}
И мне нужно отобразить эти данные на HTML-странице. Поэтому мне нужно перебирать каждую комбинацию. Что я могу сделать, но мне нужно, чтобы звуки, громкость и ожидание были в строках вместе, т.е. Где x, y и z - значения в массивах Sounds, Volume и Waits. Эти массивы могут иметь любую длину> = 1, но все они будут иметь одинаковую длину.
Я хочу, чтобы это выглядело так:
Я пробовал это:
{{range .Schedule.Combos}}
<div class="container">
<div class="row">
<div class="col">
<div class="card mt-2 ml-2">
<div class="card-body">
<h5 class="card-title">
<strong>Timing</strong>
</h5>
<h5 class="card-text">
Play every {{.Every}} mins
</h5>
<h5 class="card-text">
From time {{TimeOfDayToString .From}}
</h5>
<h5 class="card-text">
Until {{TimeOfDayToString .Until}}
</h5>
</div>
</div>
</div>
<div class="col">
<div class="card mt-2">
<div class="card-body">
<h5 class="card-title">
<strong>Sounds</strong>
</h5>
{{range .Sounds}}
<h5 class="card-text">
Sound {{.}}
</h5>
{{end}}
</div>
</div>
</div>
И это позволяет мне варьироваться по звукам, но мне нужно также варьироваться по громкости и ждать (время ожидания до воспроизведения следующего звука),в то же время как-то ...
Я думаю, что я мог бы сделать, это сделать другую структуру Combo и передать ее в мой HTML-шаблон, но я надеялся избежать этого, если есть способ сделать это сструктурирует как есть.