1
A
回答
3
我希望這是你(從http://golang.org/pkg/text/template/#Template.Name)
func (t *Template) Name() string
是什麼意思「名稱返回模板的名稱。」
如果您的意思是要從以內的模板中訪問模板名稱,我只能想到要麼將函數添加到template.FuncMap,要麼像您建議的那樣將名稱添加爲數據元素。
第一個可能會是這個樣子:
var t = template.Must(template.New("page.html").ParseFiles("page.html"))
t.Funcs(template.FuncMap{"name": fmt.Sprint(t.Name())})
,但我不能讓它在快速的時間,我搞砸關於使用它。希望這可能有助於您指引正確的方向。
從長遠來看,將名稱添加爲數據元素可能會更容易。
編輯:如果有人想知道如何使用template.FuncMap做的,它基本上是定義函數創建模板後,然後將其添加到FuncMap的問題:
完全跑步例如:
func main() {
const text = "{{.Thingtype}} {{templname}}\n"
type Thing struct {
Thingtype string
}
var thinglist = []*Thing{
&Thing{"Old"},
&Thing{"New"},
&Thing{"Red"},
&Thing{"Blue"},
}
t := template.New("things")
templateName := func() string { return t.Name() }
template.Must(t.Funcs(template.FuncMap{"templname": templateName}).Parse(text))
for _, p := range thinglist {
err := t.Execute(os.Stdout, p)
if err != nil {
fmt.Println("executing template:", err)
}
}
}
輸出:
Old things
New things
Red things
Blue things
相關問題
- 1. 獲取當前模塊名稱
- 2. 如何獲取當前項目模板名稱?
- 3. 獲取當前MembershipProvider名稱
- 4. 獲取模板名稱 - Smarty
- 5. 如何獲取Jinja2模板中當前模板的文件名?
- 6. 獲取當前環境名稱
- 7. 獲取當前$ _GET變量的名稱
- 8. 獲取當前類的名稱
- 9. android獲取當前位置名稱
- 10. 獲取當前表格的名稱
- 11. DB獲取當前數據庫名稱
- 12. 獲取當前方法的名稱
- 13. 獲取當前VBA函數的名稱
- 14. 獲取當前類的名稱
- 15. modx php獲取當前頁面名稱
- 16. Pysphere獲取當前快照名稱
- 17. 獲取當前文件夾名稱
- 18. 獲取當前字段名稱
- 19. 獲取當前國家/地區名稱
- 20. 如何獲取當前路由名稱?
- 21. iOS獲取當前地址名稱 - mkplacemark?
- 22. 獲取當前組件的名稱
- 23. 獲取MongoDB當前集合名稱
- 24. 獲取當前課程的名稱?
- 25. 獲取JSON「當前名稱/對象」?
- 26. 獲取模板複選框名稱
- 27. 獲取類模板的類型名稱
- 28. 獲取wordpress父模板名稱
- 29. 獲取當前頁面模板的名稱,而不訴諸嗅探URL
- 30. 如何從Rails中的佈局模板獲取當前視圖名稱?
謝謝。是的,這就是我的意思。是的,我看到了文檔中的Name()函數,但是想知道是否可以訪問而不訴諸FuncMaps /傳遞它。我現在將它作爲數據元素傳遞,再次感謝! – rebnoob 2013-05-14 15:32:55
嗨,我已經更新了我的答案,如何使用FuncMap的完整運行示例。 我對你的問題很感興趣,_really_想要解決它:-) – Intermernet 2013-05-15 14:21:56
很酷,謝謝你的隊友! – rebnoob 2013-05-16 20:52:49