Как получить доступ к элементу структуры, которая находится внутри структуры среза в gohtml? - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть структура A с фрагментом B структуры C и другим типом данных. Я передаю его шаблону gohtml. Как получить доступ к элементам структуры C в шаблоне gohtml.

type Str1 struct{
      var_x string
      var_y string
}

type Str2 struct {
      var_a []Str1
      var_b string
}
func main(){

B := make([]Str1], 0)

//code to append values of struct Str1 to Slice object B

str_var := Str2{B,"Good"} 

tpl = template.Must(template.ParseGlob("template/*.gohtml"))

tpl.ExecuteTemplate(w, "example.gohtml", str_var)

}

Мой вопрос касается циклического перемещения по нижележащему фрагменту и доступа к «var_x & var_y» в gohtml коде. Что в приведенном ниже примере является «A, Apple, B, Ball ....»

{[{A Apple} {B Ball} {C Cat} {A Air} {B Bat} {C Пальто} {D Dog} {E Ear}] Хорошо}

1 Ответ

0 голосов
/ 28 апреля 2020

Экспортируйте поля, начиная имя поля с заглавной буквы Unicdoe.

type Str1 struct {
    Var_x string
    Var_y string
}

type Str2 struct {
    Var_a []Str1
    Var_b string
}

Используйте. оператор для ссылки на поля значения точки.

 {{range .Var_a}}{{.Var_x}}: {{.Var_y}}; {{end}}

https://play.golang.org/p/KTlSWy10c4R

...