为了账号安全,请及时绑定邮箱和手机立即绑定

我想获取数据会话和标题,但从数据库检索数据时它位于循环之外

我想获取数据会话和标题,但从数据库检索数据时它位于循环之外

Go
宝慕林4294392 2023-06-26 17:40:05
我已经从数据库中获取了所有数据,然后数据处于循环状态。除了发生的循环之外,我想插入其他数据,例如会话和标题。然后我把它放入模板中。我猜测使用struct或slice,但学习后找不到解决方案。type Sekolah struct {  Id int  Nama string  Alamat string  Telp string }我有一个像上面这样的结构,然后我创建了句柄函数http.HandleFunc("/sekolah", func(w http.ResponseWriter, r *http.Request) {//THIS IS THE DATA I WANT TO SERVE IN TEMPLATEvar title := "Some Title"var session := "MySession"    db, errdb := sql.Open("postgres", koneksi)    if errdb != nil {        fmt.Println(errdb)    }    rows, err := db.Query("SELECT id, nama, alamat, telp FROM public.m_sekolah")    if err != nil {        fmt.Println(err)        http.Error(w, "there was an error", http.StatusInternalServerError)        return    }    var id int    var nama string    var alamat string    var telp string    var sk []Sekolah    for rows.Next(){        err = rows.Scan(&id, &nama, &alamat, &telp)        if err != nil {            fmt.Println(err)            http.Error(w, "There was an error", http.StatusInternalServerError)            return        }        sk = append(sk, Sekolah{Id: id, Nama: nama, Alamat: alamat, Telp: telp})    }    err = tmpl.ExecuteTemplate(w, "data_sekolah", sk)    if err != nil {        fmt.Println(err)    }})我想将标题和会话数据输入到SK数据中但不参与循环,然后我想将其粘贴到模板中。谁能帮我?
查看完整描述

1 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

将所有数据放入地图中并将地图传递给模板。像这样的东西。


datamap := make(map[string]interface{})

datamap["title"] = <your title>

datamap["session"] = <your session>

datamap["sk"] = <your sk array>

然后,在模板上,访问如下字段。


<p>{{.title}}</p>

<p>{{.session}}</p>

{{range .sk}}

<p>{{.Nama}}</p>

{{end}}

笔记。该代码未经测试,但我已经在我之前的项目中解决了您的确切问题。干杯


查看完整回答
反对 回复 2023-06-26
  • 1 回答
  • 0 关注
  • 101 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信