如何在GORM中更新2个实体

时间:2019-09-14 06:07:17

标签: go go-gorm

我想保持1对1的关系,但是每当我尝试保存一条记录时,用户表都会被更新,但是个人资料表中会创建一个新记录,而不是更新关联的个人资料记录。

db.Model(&user).Save(&user)

请让我知道我在做什么错。

我已经在https://stackoverflow.com/a/39333848/12066040

中提到了GORM Crud文档,包括答案。

但似乎我丢失了一些东西。

type User struct {
    UserID            uint `gorm:"primary_key"`
    Name              string

    // Profile
    FkProfileID uint    `gorm:"null;index; DEFAULT:null"`
    Profile     Profile `gorm:"foreignkey:FkProfileID"`
}

type Profile struct {
    ProfileID      uint `gorm:"primary_key"`
    ProfileSummary string
}

预期结果:

在用户的配置文件记录已经存在时,更新“用户”和“配置文件”表。

0 个答案:

没有答案