为了账号安全,请及时绑定邮箱和手机立即绑定

协会不适用于测试条目

协会不适用于测试条目

Go
料青山看我应如是 2022-07-04 16:30:11
我在 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"`

}


也许会有所帮助。


查看完整回答
反对 回复 2022-07-04
  • 1 回答
  • 0 关注
  • 124 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信