ZBLOG

golang gorm 如何设置外键关联,直接用A表的对象,获取B表的字段

使用 GORM 设置外键关联,需要在 A 表的结构体中定义一个 B 表的对象,并在该对象上使用 gorm:"foreignkey:xxx" 标签来指定外键名称。

例如,如果 A 表和 B 表是一对多关系(即一个 A 对象可以关联多个 B 对象),那么可以在 A 表的结构体中定义一个类型为 []B 的切片字段,并在该字段上使用如下标签:

type A struct {
    ID   int
    Bs   []B `gorm:"foreignkey:AID"`
}

type B struct {
    ID  int
    AID int // 外键
    ...
}

这样,就可以通过 A 表的对象,获取到关联的所有 B 表记录。

例如,假设已经创建了一个 A 表的对象 a,我们可以通过以下方式获取所有关联的 B 表记录:

var bs []B
db.Model(&a).Association("Bs").Find(&bs)

其中,Association("Bs") 方法用于获取 A 表对象关联的 B 表记录集合,Find(&bs) 方法用于将查询结果存储到 bs 切片中。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=777

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?