0
点赞
收藏
分享

微信扫一扫

go客户之列表展示

把添加过的信息通过列表展示到页面,先添加路由

r.HandleFunc("/cuslist", web.Cuslist)

执行web.Cuslist方法进行数据库查询,这里使用的是页面分页,所以数据库直接把全部数据查询出来。

func Cuslist(w http.ResponseWriter, r *http.Request) {

w.Header().Set("Content-Type", "text/html;charset=utf-8")
t, _ := template.ParseFiles("templates/customer-list.html")
customers, err := dbdata.Cuslist()
if err != nil {
fmt.Println(err)
logger.Log.Error(err)
}
count, err := dbdata.Custotal()
result := make(map[string]interface{})
result["total"] = count
result["list"] = customers
t.Execute(w, result)
}

这里有2个查询,一个是全部数据列表,一个是总数据数。然后把这2个数据放入到map,最后转向页面。

func Cuslist() (customers []model.Customer, err error) {
rows, err := Db.Query("select id,name,taxno,addr,contact,contel,content,addtime from customer order by id desc ")
if err != nil {
logger.Log.Error(err)
return
}
for rows.Next() {
customer := model.Customer{}
err = rows.Scan(&customer.Id, &customer.Name, &customer.Taxno, &customer.Addr, &customer.Contact, &customer.Contel, &customer.Content, &customer.Addtime)
if err != nil {
logger.Log.Error(err)
return
}
customers = append(customers, customer)
}
rows.Close()
return
}

func Custotal() (count int, err error) {
err = Db.QueryRow("select count(*) from customer ").Scan(&count)
return
}

数据库查询出来的数据存入Customer结构体,然后定义切片[]Customer,每组织一条记录就通过append方法放入切片。

页面通过循环list进行展示

{{ range .list }}
<tr class="text-c">
<td>{{ .Id }}</td>
<td><u style="cursor:pointer" class="text-primary" onclick="member_show('查看','/cusinfo','{{ .Id }}','760','510')">{{.Name}}</u></td>
<td>{{.Taxno}}</td>
<td>{{.Contact}}</td>
<td class="text-l">{{.Contel}}</td>
<td>{{.Content}}</td>
<td class="td-manage"> <a title="编辑" href="javascript:;" onclick="member_edit('编辑','/cuseditinit','{{ .Id }}','','510')" class="ml-5" style="text-decoration:none"><i class="Hui-iconfont"></i></a> <a title="删除" href="javascript:;" onclick="member_del(this,'{{ .Id }}')" class="ml-5" style="text-decoration:none"><i class="Hui-iconfont"></i></a></td>
</tr>
{{ end }}

举报

相关推荐

0 条评论