diff options
Diffstat (limited to 'src/db/db.go')
| -rw-r--r-- | src/db/db.go | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/db/db.go b/src/db/db.go index 6f617c2..d74c874 100644 --- a/src/db/db.go +++ b/src/db/db.go @@ -16,6 +16,8 @@ type Database struct { p *pgxpool.Pool } +type DbValues pgx.NamedArgs + func NewDb(config *conf.Conf) *Database { pool, err := pgxpool.New(context.Background(), config.Db.Url) if err != nil { @@ -33,13 +35,16 @@ func NewDb(config *conf.Conf) *Database { } } -func (d *Database) InsertTable(table string, columns []string, values pgx.NamedArgs) error { +func (d *Database) InsertTable(table string, columns []string, values DbValues) error { columnstr := stringifyColumns(columns, "") valuesstr := stringifyColumns(columns, "@") query := fmt.Sprintf("INSERT INTO %s (%s) VALUES (%s) RETURNING *", table, columnstr, valuesstr) log.Println(query, values) + // Convert DbValues to pgx.NamedArgs type to use NamedArgs type features + namedArgs := pgx.NamedArgs(values) + // TODO Use r.Context() from HTTP Request? ctx := context.Background() - row, err := d.p.Exec(ctx, query, values) + row, err := d.p.Exec(ctx, query, namedArgs) if err != nil { return err } |
