質問する
651 次
2 に答える
5
要素を構築して表すビューを書くことができますselect
:
{{define "select"}}
<select name="{{.Name}}>
{{range $a, $b := .Options}}
<option value="{{print $a}}" {{if $a == .Selected}}>{{print $b}}</option>
{{end}}
</select>
{{end}}
そして対応するデータ構造:
type SelectBlock struct {
Name string
Selected string
Options map[string]string
}
次にインスタンス化します。
termSelect := SelectBlock{
Name: "term",
Selected: "",
Options: map[string]string{
"full-time": "Full Time",
"part-time": "Part Time",
"contract": "Contract",
"freelance": "Freelance",
},
}
そしてSelected
フィールドを設定します:
termSelect.Selected = "full-time"
フォーム ビュー内にビュー フラグメントを出力します。
{{template "select" $termSelect}}
$termSelect
のインスタンスはどこにありますかSelectBlock
。
于 2013-10-21T10:16:05.043 に答える
2
Go v1.2以降を使用していて、将来これを検討している他の人のために: (他の新しい演算子の中でも)等値演算子を提供していますtext/template
: http://golang.org/doc/go1.2#text_templatehtml/template
{{if eq .Term "full-time" }}selected{{end}}
...
{{if eq .Term "freelance" }}selected{{end}}
于 2013-10-22T13:56:28.950 に答える