3 回答
TA贡献1828条经验 获得超3个赞
这是我发现连接到 postgres 的最佳方式。
import _ "github.com/jinzhu/gorm/dialects/postgres"
dsn := url.URL{
User: url.UserPassword(conf.User, conf.Password),
Scheme: "postgres",
Host: fmt.Sprintf("%s:%d", conf.Host, conf.Port),
Path: conf.DBName,
RawQuery: (&url.Values{"sslmode": []string{"disable"}}).Encode(),
}
db, err := gorm.Open("postgres", dsn.String())
TA贡献2051条经验 获得超10个赞
遵循官方文档,它对我有用,请访问https://gorm.io/docs/connecting_to_the_database.html
import (
"gorm.io/driver/postgres"
"gorm.io/gorm"
)
dsn := "host=localhost user=gorm password=gorm dbname=gorm port=9920 sslmode=disable TimeZone=Asia/Shanghai"
db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{})
我只需删除主机变量并输入其余详细信息即可工作。
TA贡献1810条经验 获得超5个赞
首先,这个问题保留了想象的空间。
无论如何,以下是您无法将 gorm 连接到 postgres 的可能用例:
确保您的 postgres 在您指定的主机上运行良好(在本例中为:localhost)
如果没问题,请确保您的用户名和密码正确
如果一切正常,您可以在 CLI 中检查:
$ sudo -i -u postgres $ psql
如果成功,则意味着代码中有其他内容。据我所知,您没有显示导入部分。你是否默默地导入了 postgres gorm 方言?
import _ "github.com/jinzhu/gorm/dialects/postgres"
- 3 回答
- 0 关注
- 278 浏览
添加回答
举报