Проблемы с отображением шаблонизатора Golang

Есть вот такой шаблон:

<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>{{.Title}}</title>
</head>
<body>
<h1>{{.H1}}</h1>
<form action="/add" method="post" enctype="multipart/form-data">
    <h2>Добавление документа в СКО</h2>
    <input type="file" name="file" id="file">
    <button type="submit">Добавить</button>
</form>
<hr>
<h2>Файл под системой контроля СКО</h2>
<ul>
    {{range .verifyData}}
        <li>
            <div>hi</div>
        </li>
    {{end}}
</ul>

</body>
</html>

Программа компилируется, но на выходе получаю пустой блок {{range .verifyData}} введите сюда описание изображения

Массив точно не пустой, в консоль выводит данные и при дебаге вижу, что массив не пуст. Код Http сервера:

package main

import (
    "fmt"
    "html/template"
    "net/http"
)

type  DataView struct {
    Title string
    H1 string
    verifyData []verify
}

func main(){
    data:=DataView{"SCO","Система Контроля Оригинальности",GetVerify()}

    fmt.Println("Starting server...")
http.HandleFunc("/make", func(writer http.ResponseWriter, request *http.Request) {
    fmt.Fprintf(writer,InsertFileHash(request.FormValue("file_name")))
})
    http.HandleFunc("/get", func(writer http.ResponseWriter, request *http.Request) {
        var data []verify
        data=GetVerify()
        for _,d:=range data{
            fmt.Fprintf(writer,d.getString()+"\n")

            fmt.Printf("%s\n",d.getString())
        }
    })
    http.HandleFunc("/", func(writer http.ResponseWriter, request *http.Request) {
        //var  s []SCO
        //s = SCOextractAll()
        for _,k:=range data.verifyData{
            fmt.Println(k)
        }
        tmpl,err := template.ParseFiles("resources/index.html")
        if err != nil{
            fmt.Println(err)
            panic("При генерации шаблона произошла ошибка! Обратитесь к администратору")
        }
        tmpl.Execute(writer,data)
    })
http.ListenAndServe(":80",nil)
}

Не понимаю в чем проблема, спасибо


Ответы (1 шт):

Автор решения: HelloHexx

Решить проблему с выводом Range в шаблоне, помог рефакторинг переменных. Нужно было что все переменные начинались с верхнего регистра

verifyData []verify -> VerifiData []verify

type verify struct {
    id int
    File_name string
    File_hash string
    File_path string
}

Наверное, Это связано с кодстандартом языка.

→ Ссылка