我正在尝试使用Go Postgres Data Access Toolkit
(https://github.com/mgutz/dat)。这是我的代码(来自github):
package postgres
import (
"os"
"log"
"database/sql"
_ "github.com/lib/pq"
"gopkg.in/mgutz/dat.v1"
"gopkg.in/mgutz/dat.v1/sqlx-runner"
)
var DB *runner.DB
func init() {
var err error
db, err := sql.Open("postgres", "user=" + os.Getenv("DBUSER") +
" password=" + os.Getenv("DBPASS") + " host=" + os.Getenv("DBHOST") +
" port=" + os.Getenv("DBPORT") + " dbname=" + os.Getenv("DBNAME") + " sslmode=disable")
if err != nil {
log.Fatal(err)
}
dat.EnableInterpolation = true
DB = runner.NewDB(db, "postgres")
}
正如我在文档中看到的,现在我可以像这样使用DB
:
DB.InsertInto("payments").
Blacklist("id", "updated_at", "created_at").
Record(userData).
Returning("id").
QueryScalar(&userData.ID)
但是我的DB
对象没有这样的功能:
为什么以及如何解决?