登录
首页 >  Golang >  Go问答

协会不处理测试条目

来源:stackoverflow

时间:2024-04-04 23:18:35 365浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《协会不处理测试条目》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

我在 gorm 中定义了两个模型 user 和 address: 文件user.go

type 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)

用户和地址都被创建,但是,地址与用户无关,只是 出现空地址字段。我忘记了什么?

如果您的实体中有关联(具有嵌套模型),这是设置测试条目的正常方法吗?


解决方案


尝试使用“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"`
}

Online documentation

也许会有帮助。

今天关于《协会不处理测试条目》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>