dongyouzhui1969 2019-09-25 06:41
浏览 445

如何为gorm组织多个外键

I am making a Go project with gorm for mysql.

When creating a mysql table using gorm, it is necessary to create multiple foreign keys for one table. Until now, it was created like the following code

such a table

type Members struct {
    ID           int32     `gorm:"AUTO_INCREMENT" json:"id" from:"id"`
    MyselfUserID int32     `gorm:"NOT NULL" json:"myself_user_id" from:"myself_user_id"` 
    MemberUserID int32     `gorm:"NOT NULL" json:"member_user_id" from:"family_user_id"` 
    FirstName    string    `json:"first_name" from:"first_name"`
    LastName     string    `json:"last_name" from:"last_name"`
    Relationship string    `json:"relationship" from:"relationship"`
    Image        string    `json:"image" from:"image"`                       
    Version      int32     `gorm:"column:version" json:"version" form:"version"`        
    UpdatedAt    time.Time `gorm:"column:updated_at" json:"updated_at" form:"updated_at"`
    CreatedAt    time.Time `gorm:"column:created_at" json:"created_at" form:"created_at"` 
}

I had a foreign key like this

MgtDB.AutoMigrate(&Members{}).AddForeignKey("myself_user_id", "users(user_id)", "RESTRICT", "RESTRICT").AddForeignKey("member_user_id", "users(user_id)", "RESTRICT", "RESTRICT")

I feel a little verbose Please let me know if there are other ways like this

Thanks

  • 写回答

1条回答 默认 最新

  • douyimin1083 2019-09-25 07:17
    关注
    type Members struct {
        ...
        MemberUserID int32
        MemberUser   User   `gorm:"foreignkey:MemberUserID"`
    }
    

    document: define a foreign key

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器