ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

go言語などを(255)倍楽しむコミュの結構使えるtemplate

  • mixiチェック
  • このエントリーをはてなブックマークに追加
package main
import (
"text/template"
"os"
)
type T struct{
Pref string
J []string
}
type S struct{
I []T
}
var t1=template.Must(template.ParseFiles("a.tmpl"))
func main() {
s:=S{}
s.I=[]T{{Pref:"tokyo",J:[]string{"a","b"}}}
t1.Execute(os.Stdout, s)
}

--- a.tmpl
{{range $i := .I}}
{{range $j := $i.J}}
{{$i.Pref}}{{$j}}
{{end}}
{{end}}


ちなみに、
type K struct{I,J []string}
t1.Execute(os.Stdout, K{I:[]string{"a"}, J:[]string{"x"}})
として、tmplファイルでrangeの二重ループにしたい場合は、
{{range $i:=.I}}
{{range $j:=.J}}
{{end}}
{{end}}
上記の方法はngです!!
正しくは、以下のように内側ループの.Jの前に$が必要とのことです。
{{range $i:=.I}}
{{range $j:=$.J}}
{{end}}
{{end}}



コメント(0)

mixiユーザー
ログインしてコメントしよう!

go言語などを(255)倍楽しむ 更新情報

go言語などを(255)倍楽しむのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。