3 回答

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊
這是我發(fā)現(xiàn)連接到 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貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊
遵循官方文檔,它對(duì)我有用,請(qǐng)?jiān)L問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{})
我只需刪除主機(jī)變量并輸入其余詳細(xì)信息即可工作。

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊
首先,這個(gè)問題保留了想象的空間。
無論如何,以下是您無法將 gorm 連接到 postgres 的可能用例:
確保您的 postgres 在您指定的主機(jī)上運(yùn)行良好(在本例中為:localhost)
如果沒問題,請(qǐng)確保您的用戶名和密碼正確
如果一切正常,您可以在 CLI 中檢查:
$ sudo -i -u postgres $ psql
如果成功,則意味著代碼中有其他內(nèi)容。據(jù)我所知,您沒有顯示導(dǎo)入部分。你是否默默地導(dǎo)入了 postgres gorm 方言?
import _ "github.com/jinzhu/gorm/dialects/postgres"
- 3 回答
- 0 關(guān)注
- 346 瀏覽
添加回答
舉報(bào)