一尘不染

开始:我可以在模板中使用模数吗

go

我的问题如标题中所述。我正在尝试做类似的事情:

{{range $index, $element := .Products}}
    {{if $index % 4 == 0}}<div class="row">{{end}}
        <div class="columns small-3 product">
            <img src="/img/{{.ImageUrl}}" alt="{{.ImageUrl}}" />
                <a href="/product">
                    <h3>{{.Title}}</h3>
                </a>
                <p>
                  {{.Description}}
                </p>
                <p>
                    {{.Price}} / liter
                </p>
                </div>
        {{if index % 4 == 0}}</div>{{end}}
{{end}}

我得到错误:

template: products.html:9: unexpected "%" in operand

是否有其他方法可以在模板中进行模量计算?


阅读 273

收藏
2020-07-02

共1个答案

一尘不染

添加具有所需逻辑的模板功能。例如:

t := template.New("")
t.Funcs(template.FuncMap{"mod": func(i, j int) bool { return i%j == 0 }})
t.Parse(`... {{if mod $index 4}}<div class="row">{{{end}} ...`)

游乐场的例子

2020-07-02