關於template
模板,golang語言提供了兩個包text/template
和html/template
,前者主要用來處理文字檔案的變數渲染,而後者主要用於對html之類的網頁檔案進行渲染。由於最近在使用gin框架編寫rest api,順便學習template
的使用,再此記錄一下。
template
模板的使用主要是在對template
結構體的相關方法進行操作。我們首先得初始化乙個template
物件。
type template struct
# 初始化乙個template物件
## must函式會在parse返回err不為nil時,呼叫panic,不需要初始化後再呼叫parse方法去檢測
func must(t *template,err error) *template
## new函式用來建立乙個指定的html模板
func new(name string) *template
## parsefiles函式用來從乙個指定的檔案中建立並解析模板
func parsefiles(filenames ...string) (*template, error)
## parseglob函式從指定的匹配檔案中建立並解析模板,必須得至少匹配乙個檔案
func parseglob(pattern string) (*template, error)
# template結構體物件常用的幾個方法
## 使用new()函式建立的模板需要指定模板內容
func (t *template) parse(text string) (*template, error)
## delims()方法用來指定分隔符來分割字串,隨後會使用parse, parsefiles, or parseglob方法進行模板內容解析
func (t *template) delims(left, right string) *template
## execute()方法用來把乙個模板解析到指定的資料物件data中,並且寫入到輸出wr中。如果有任何錯誤,就like停止,但如果是並行操作的話,有一些資料已經被寫入了。因此,使用該方法一定要注意併發安全性
func (t *template) execute(wr io.writer, data inte***ce{}) error
## 同上
func (t *template) executetemplate(wr io.writer, name string, data inte***ce{}) error
# 模板檔案
userlist:
} users:
}}:}}}
}}
# 示例程式
$ cat golanghtml.go
package main
import (
"html/template"
"os"
)func main() )
}$ go run golanghtml.go
userlist:
[bgbiao biaoge]
users:
0:bgbiao
1:biaoge
bgbiao
biaoge
golang視角下的設計模式
單利模式 func newsingleton singleton return instance func newsingleton singleton return instance func newsingleton singleton return instance func newsingl...
golang下的GOPATH路徑問題
為了方便,我一般使用task來管理專案的編譯等事項,由於才入門go,所以碰到乙個問題,以此篇為記。我需要開發乙個組建,所以 結構沒有src目錄,並且專案放在gopath路徑的src目錄下 我在編譯二進位制檔案的時候使用了下面的命令gopath pwd gobin pwd go install mai...
ubnutu下golang安裝Beego框架
把go環境變數設定好以後我們試試beego框架 首先去git 官方 讓輸入apt get install git 安裝beego框架ubnutu輸入 完成以後開啟我們到gopath到目錄 coarch和chostos不不用加到到,加以後會出現上面到目錄的,不建議大家加!我到環境變數就是這樣到 exp...