Как получить индекс диапазона в файле шаблона Beego

Например

{{ range .cars }} 
{{.color}} , ${{.price}} 
{{ end }}

Размер массива 'cars' равен 10. Как я могу получить значение индекса?

Когда индекс 5, я хочу сделать некоторые процессы.

Я использую веб-фреймворк Beego.

1 ответ

Решение

Прежде всего, ответ на ваш вопрос дал в комментарии topskip.

range $index, $element := pipeline

См. Документацию по адресу http://golang.org/pkg/text/template/.

Во-вторых, имейте в виду, что шаблоны быстро становятся слишком сложными, когда вы начинаете вводить логику, например, обрабатывать 5-й элемент по-разному.

Имея это в виду, лучше вместо этого попытаться спроектировать модели представлений так, чтобы их было легко визуализировать. В ваших контроллерах может потребоваться больше логики, но обычно там проще тестировать. В качестве альтернативы рассмотрите возможность использования вспомогательных утилит, написанных на Go.

Меньше логики в шаблонах, как правило, облегчит работу.

Другие вопросы по тегам