### 使用`.`來訪問當前位置的上下文
### 使用`$`來引用當前模板根級的上下文
##
## 結構體數據渲染:
~~~
結構體:
type student struct{
?
? ?Name string
? ?Age int
? ?Gender string
?
}
?
賦值:
c.Data["student"] = &student{Name:"知了課堂",Age:18,Gender:"男"}
?
前端使用:
學生姓名:{{.student.Name}}
學生年齡:{{.student.Age}}
學生性別:{{.student.Gender}}
?
?
?
注意:結構體中的字段要在其他地方使用,比如首字母大寫
~~~
## 數組數據渲染:
~~~
lista := [5]int{1,2,3,4,5}
c.Data["list_a"] = lista
?
前端:
?
第一種:
{{range $k,$v := .arr}}
{{$k}}
{{$v}}
{{end}
?
?
第二種:
{{range .arr}}
? {{.}}
{{end}}
~~~
## 結構體數組渲染:
~~~
結構體:
type student struct {
? Name string
? Age int
? Gender string
}
?
賦值:
arr_struct := [3]student{{Name:"hl",Age:18,Gender:"男"},{Name:"hallen",Age:19,Gender:"男"},{Name:"hallen1",Age:191,Gender:"男"}}
c.Data["arr_struct"] = arr_struct
?
?
前端獲取:先循環數組,在獲取結構體變量,注意是大寫
{{range $v := .arr_struct}}
{{$v.Name}}
{{$v.Age}}
{{$v.Gender}}
?
?
?
{{range .books}}
? {{.Name}}
? {{.Author}}
{{end}}
~~~
## map數據渲染:
~~~
//teacher :=map[string]string{"name":"張三","age":"18"}
?
teacher :=make(map[string]string)
?
teacher["name"]="老王"
?
teacher["age"]="30"
?
c.Data["teacher"] = teacher
?
?
前端:
?
取出key對應的值
{{.teacher.name}}
{{.teacher.age}}
?
取出所有的key和value:
{{range $k,$v := .teacher}}
? {{$k}}
? {{$v}}
{{end}}
~~~
## 結構體和map組合渲染:
~~~
結構體:
type student struct {
? Name string
? Age int
? Gender string
}
?
賦值:
mapa := make(map[int]student)
mapa[101] = student{Name:"張三1",Age:181,Gender:"男"}
mapa[102] = student{Name:"張三2",Age:182,Gender:"男"}
mapa[103] = student{Name:"張三3",Age:183,Gender:"男"}
c.Data["hero_map"] = mapa
?
前端獲取:先循環數組,在獲取結構體變量,注意是大寫
{{range $v :=.hero_map}}
{{$v.Name}}
{{end}}
~~~
## 切片數據渲染:
~~~
listb := []int{1,2,3,4,5,6,7}
c.Data["list_b"] = listb
?
前端:只有一個值的時候默認是切片的元素,而不是角標
{{range $v := .list_b}}
{{$v}}
{{end}}
~~~
結構體和切片:類似結構體和數組
- go環境搭建
- 解決go get網絡慢的問題
- beego的安裝
- bee的安裝
- 編輯器
- go module
- 配置文件詳解
- 配置文件其他說明
- 路由方法
- 路由
- 數據校驗
- 校驗函數
- 頁面跳轉
- 獲取前端數據
- json文件的獲取
- xsrf的用法
- xsrf的防護
- srfs和json的搭配
- flash的用法
- 過濾器
- url反轉
- 各類數據的處理
- 模板函數
- 內置模板函數
- 自定義模板函數
- 模板
- 模板處理
- 模板渲染
- 視圖文件的處理
- 靜態文件
- 請求方式判斷
- 驗證碼
- 另一種方法
- 分頁類
- session
- 登錄判斷
- orm模塊
- 使用方法
- mysql的安裝
- 安裝orm及驅動
- 建立模型
- 自定義模型
- 增刪改查
- 高級查詢
- 常見問題匯總
- 代碼收藏
- 打包部署
- go build打包
- utils收藏
- 新goer容易犯的錯
- 字符串操作