gpt4 book ai didi

html - 不允许嵌套函数

转载 作者:数据小太阳 更新时间:2023-10-29 03:17:30 25 4
gpt4 key购买 nike

我想获取我的数据库的一个表的值并在 html 中解析它们。这是我用来尝试执行此操作的代码,但我收到一个名为 nested func not allowed 的错误。

我开始创建一个结构:

type App struct{
Title string
Author string
Description string
}

我创建了一个函数来呈现模板:

func render(w http.ResponseWriter, tmpl string){
tmpl = fmt.Sprintf("templates/%s", tmpl)
t, err := template.ParseFiles(tmpl)
if err != nil{
log.Print("template parsing error: ", err)
}
err = t.Execute(w, "")
if err != nil{
log.Print("template executing error: ", err)
}
}

然后,在这里我从数据库中获取应用程序并尝试将它们呈现为 html。

func myApps(w http.ResponseWriter, r *http.Request){
db, err := sql.Open("postgres"," user=postgres dbname=test host=localhost password=1234 sslmode=disable")
if err != nil{
log.Fatal(err)
}
rows, err := db.Query(`SELECT title, author, description FROM apps
WHERE title ILIKE $1
OR author ILIKE $1
OR description ILIKE $1`)
defer rows.Close()

apps := []App{}
for rows.Next(){
b := App{}
err := rows.Scan(&b.Title, &b.Author, &b.Description)
apps = append(apps, b)

render(w, "myapps.html", apps)
}

提前致谢!

最佳答案

行周围可能有一些类型,包括 for statement :

for rows.Next(){

我在其他任何地方都没有看到打开的“{”关闭。

(或者它已关闭,但 func myApps 未关闭)

也许应该是:

        for rows.Next() {
b := App{}
err := rows.Scan(&b.Title, &b.Author, &b.Description)
apps = append(apps, b)
}
render(w, "myapps.html", apps)
}

无论如何,运行 go fmt 总是一个好主意。

关于html - 不允许嵌套函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24671277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com