gorm结构体嵌套查询

本文详细介绍了GORM库在Go语言中进行结构体嵌套查询的方法,包括Has Many关联方式的三种用法:默认外键关联、自定义外键关联以及通过外键和引用指定关联。通过实例分析了每种方式的工作原理和适用场景。
摘要由CSDN通过智能技术生成

gorm结构体嵌套查询

Has Many

gorm.Model

// gorm.Model 的定义
type Model struct {
   
  ID        uint           `gorm:"primaryKey"`
  CreatedAt time.Time
  UpdatedAt time.Time
  DeletedAt gorm.DeletedAt `gorm:"index"`
}

声明

type Player struct {
   
   gorm.Model          // gorm提供的结构体,自带id\Createat\updateat\deleteat
   Username   string    `gorm:"comment:玩家用户名"`
   Password   string    `gorm:"comment:密码"`
   //Heros       []Hero
   // 第二种
   //Heros       []Hero	`gorm:"foreignKey:PlayerKey"`  // 定义外键的名字
   // 第三种
   Heros     []Hero    `gorm:"foreignKey:PlayerName;references:Username"` // 自定义外键引用
}


// hero   player可以拥有多个hero
type Hero struct {
   
   gorm.Model
   Name      string    `gorm:"comment:英雄名字"`
   HP       int32     `gorm:"comment:血量"`
   //PlayerID uint
   // 第二种
   //PlayerKey    uint
   // 第三种
   PlayerName     string
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值