3 回答

TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超8個(gè)贊
我同意 Darshan Computing,我認(rèn)為從請(qǐng)求中傳遞信息的正確方法將在管道中。您可以將數(shù)據(jù)拆分為要呈現(xiàn)的數(shù)據(jù)和上下文,例如,如果您想清楚地將兩者分開,可以讓模板數(shù)據(jù)結(jié)構(gòu)將它們都嵌入:
type TemplateData struct {
*Content
*Context
}
例如,這給出了這一點(diǎn)。然后,您可以根據(jù)共享的內(nèi)容和特定于查詢的內(nèi)容重復(fù)使用某些上下文/內(nèi)容信息。

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
這是在模板編譯之后但在每次執(zhí)行之前使用Funcs覆蓋的有效解決方案嘗試(鏈接到 Playground)(感謝 Valentin CLEMENT 在其他問題中)。"isAdmin"
但它有幾個(gè)缺陷:
"isAdmin"
在模板編譯之前聲明一個(gè)虛擬的空函數(shù)是很奇怪的。(多次使用 Funcs 很痛苦,因?yàn)槲也荒苤桓采w一個(gè)方法,我必須提供一個(gè)包含所有功能的完整FuncMap) 編輯:實(shí)際上以前的 funcs 并沒有丟失,我錯(cuò)了。
它本質(zhì)上不是線程安全的,并且會(huì)在多個(gè) goroutine 更改并執(zhí)行相同的模板時(shí)失敗
- 3 回答
- 0 關(guān)注
- 227 瀏覽
添加回答
舉報(bào)