我有这段代码。问题出在函数中,我试图在外部范围内分配给 db var,但它最终被声明为局部变量。var db *sqlx.DBfunc GetDatabaseConnection() *sqlx.DB { if db == nil { db, err := sqlx.Connect("postgres", "user=foo dbname=bar sslmode=disable") if err != nil { log.Fatalln(err) } } return db}我的问题是,关于这一行:db, err := sqlx.Connect(...)我如何分配db给外部范围,而不是将其声明为局部变量?
1 回答
长风秋雁
TA贡献1757条经验 获得超7个赞
var db *sqlx.DB
func GetDatabaseConnection() *sqlx.DB {
if db == nil {
var err error # ADD THIS LINE, AND DO = INSTEAD OF := ON NEXT LINE
db, err = sqlx.Connect("postgres", "user=foo dbname=bar sslmode=disable")
if err != nil {
log.Fatalln(err)
}
}
return db
}
- 1 回答
- 0 关注
- 84 浏览
添加回答
举报
0/150
提交
取消