前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Gorm-模型关系定义和标签 (三)

Gorm-模型关系定义和标签 (三)

原创
作者头像
堕落飞鸟
发布2023-04-24 00:13:36
6260
发布2023-04-24 00:13:36
举报
文章被收录于专栏:飞鸟的专栏

标签说明

除了上述的BelongsTo、HasOne、HasMany和ManyToMany标签外,Gorm还提供了其他标签,用于进一步细化模型之间的关系。以下是一些常用标签的说明:

  • primaryKey: 指定主键字段。
  • uniqueIndex: 指定唯一索引字段。
  • index: 指定普通索引字段。
  • default: 指定默认值。
  • size: 指定字段大小。
  • not null: 指定字段非空。
  • autoCreateTime: 自动创建记录的时间戳。
  • autoUpdateTime: 自动更新记录的时间戳。

下面是一些标签示例:

代码语言:javascript
复制
type User struct {
    gorm.Model
    Name      string     `gorm:"uniqueIndex"`
    Age       int        `gorm:"index"`
    Gender    string     `gorm:"size:255;not null"`
    CreatedAt time.Time  `gorm:"autoCreateTime"`
    UpdatedAt time.Time  `gorm:"autoUpdateTime"`
    DeletedAt *time.Time `gorm:"index"`
}

在上述代码中,我们为User模型中的各个字段添加了不同的标签,以实现不同的功能。例如,我们使用了uniqueIndex标签来指定Name字段为唯一索引字段,使用了index标签来指定Age字段为普通索引字段,使用了size标签来指定Gender字段的大小,使用了not null标签来指定Gender字段非空,使用了autoCreateTimeautoUpdateTime标签来自动创建和更新记录的时间戳,使用了index标签来指定DeletedAt字段为索引字段。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 标签说明
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档