对模板的Golang函数调用在单个结构上失败

对模板的Golang函数调用在单个结构上失败,go,Go,我有以下代码 func (w *Warehouse) GetId() string { return w.Id.Hex() } 查看多个完美的作品 {{ range .Data }} <tr> <td>{{ .Name }}</td> <td>{{ .City }}</td> <td>{{ .Manager }}</td> <td><a class="blue

我有以下代码

func (w *Warehouse) GetId() string {
  return w.Id.Hex()
}
查看多个完美的作品

{{ range .Data }}
   <tr>
   <td>{{ .Name }}</td>
   <td>{{ .City }}</td>
   <td>{{ .Manager }}</td>
   <td><a class="blue" href="/warehouse/show/{{ .GetId }}">view</a></td>
   </tr>
{{ end }}

你知道我这里缺少什么吗?

根据你的代码。数据是数组或切片。它没有GetId()方法

问题是我需要像这样创建我的结构实例

var warehouse = new(models.Warehouse) // works
而不是

var warehouse models.Warehouse // fails

如果您在.Data上设置范围,我想它是一个数组,而不是一个结构。您不需要作为函数运行
.GetId
?所以:
.GetId()
。或者我误解了您正在使用的模板?在上面的示例中,数据是一个结构数组,在下面的示例中是一个结构数组。
var warehouse models.Warehouse // fails