2017-10-21 102 views
0

我有一個golang文件,其中包含所有全局變量,如靜態文件路徑,版本ID等。我需要在模板中使用它,但在渲染模板時不傳遞上下文。這裏是一個演示:Golang從模板訪問設置

設定]中

const STATIC_FILE="/static/" 
const VERSION = 1 

example.html的

<script src="{{.STATIC_FILE}}assets/plugins/angular/angular-checklist.js?v={{.VERSION}}" type="text/javascript"></script> 

注:我在尋找一個不同的方式,而不是通過上下文來執行模板的方法。

+1

我想你是從Django :) – Tractatus

回答

1

我不知道你可以直接訪問一個全局變量,但我一直在使用模板函數來做到這一點。

var func_map = template.FuncMap{ 
    "getSettings" : func() { 
     return Settings{} 
    } 
} 
temp,err := template.New(template_name).Funcs(funcMap).Delims("{[", "]}").Parse(string(dat)) 
+0

謝謝,它適用於我, – RockOnGom