我在 GORM 中定義了兩個模型用戶和地址:文件 user.gotype User struct { gorm.Model Identity string `json:"identity"` Password string `json:"password"` Address Address AddressID int}type Address struct { gorm.Model Street string `json:"street"` StreetNumber string `json:"streetnumber"`}在 main.go 文件中,我啟動數據庫、自動遷移并希望將測試用戶添加到數據庫:database.InitDatabase()database.DBConn.AutoMigrate(&user.User{})database.DBConn.AutoMigrate(&user.Address{})userRec := &user.User{ Identity: "John Wayne", Password: "mysecretpassword", Address: user.Address{Street: "Teststreet", StreetNumber: "1"}}database.DBConn.Create(userRec)用戶被創建,地址也被創建,但是,地址與用戶沒有關聯,只是出現了空的地址字段。我忘記了什么?如果您的實體中有關聯(使用嵌套模型),這是設置測試條目的正常方法嗎?
1 回答

繁星點點滴滴
TA貢獻1803條經驗 獲得超3個贊
嘗試使用“address_id”字段作為foreignKey.
type User struct {
gorm.Model
Identity string `json:"identity"`
Password string `json:"password"`
Address Address `gorm:"foreignKey:address_id;association_autoupdate:false"`
AddressID uint `json:"address_id"`
}
也許會有所幫助。
- 1 回答
- 0 關注
- 147 瀏覽
添加回答
舉報
0/150
提交
取消