将请求正文插入数据库
Inserting request body into database
我正在使用 Go、SQLX、postgres 和 go-swagger 开发 API。
在 POST 方法处理程序中,我得到一个由 swagger 定义和验证的类型的请求主体。
验证后我想将其插入 postgres table.
除了以下片段外,我没有找到太多关于该主题的文档:
sqlStatement := `
INSERT INTO users (age, email, first_name, last_name)
VALUES (, , , )
RETURNING id`
id := 0
err = db.QueryRow(sqlStatement, 30, "jon@calhoun.io", "Jonathan", "Calhoun").Scan(&id)
这意味着我需要描述我想要保留的结构的每个字段。
有没有一种方法可以将结构保存在 table 中?
db.save(struct)
是in the examples in the README:
// Named queries can use structs, so if you have an existing struct (i.e. person := &Person{}) that you have populated, you can pass it in as &person
tx.NamedExec("INSERT INTO person (first_name, last_name, email) VALUES (:first_name, :last_name, :email)", &Person{"Jane", "Citizen", "jane.citzen@example.com"})
我正在使用 Go、SQLX、postgres 和 go-swagger 开发 API。
在 POST 方法处理程序中,我得到一个由 swagger 定义和验证的类型的请求主体。 验证后我想将其插入 postgres table.
除了以下片段外,我没有找到太多关于该主题的文档:
sqlStatement := `
INSERT INTO users (age, email, first_name, last_name)
VALUES (, , , )
RETURNING id`
id := 0
err = db.QueryRow(sqlStatement, 30, "jon@calhoun.io", "Jonathan", "Calhoun").Scan(&id)
这意味着我需要描述我想要保留的结构的每个字段。
有没有一种方法可以将结构保存在 table 中?
db.save(struct)
是in the examples in the README:
// Named queries can use structs, so if you have an existing struct (i.e. person := &Person{}) that you have populated, you can pass it in as &person
tx.NamedExec("INSERT INTO person (first_name, last_name, email) VALUES (:first_name, :last_name, :email)", &Person{"Jane", "Citizen", "jane.citzen@example.com"})