知识分享之Golang——gorm的结构体常用标签

简介: 知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。知识分享系列目前包含Java、Golang、Linux、Docker等等。

知识分享之Golang——gorm的结构体常用标签

背景

知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。

知识分享系列目前包含Java、Golang、Linux、Docker等等。

开发环境

内容

近期一直在使用gorm进行数据的增删改查操作,其每个表或每个数据结果都会对应一个结构体,但是有时在使用这个结构体时会额外增加一部分字段作为一些其他业务逻辑的使用,这时如何来有效避免一些字段不被gorm进行处理呢,我去查阅了官方文档和其网上的资料,整理本节内容,以下是其结构体中常用的使用方式,便于小伙伴们使用:
|标签名|作用|案例|
|---|---|---|
|column|指定字段名,如果不指定通常是字段的小写驼峰格式|gorm:"column:usr_id;"|
|primaryKey|是否是主键|gorm:"column:usr_id;primaryKey"|
|unique|是否唯一|gorm:"column:usr_id;unique"|
|default|指定默认值|gorm:"column:usr_id;default:123"|
|-|忽略该字段|gorm:"-"|
|->|只读|gorm:"->;column:usr_id"|
|<-|允许读和写|gorm:"<-;column:usr_id"|
|<-:update|允许读和更新|gorm:"<-:update;column:usr_id"|
|<-:create|允许读和创建|gorm:"<-:create;column:usr_id"|
|->:false;<-:create|仅创建|gorm:"->:false;<-:create;column:usr_id"|

// 覆盖User结构体使用的表名
func (User) TableName() string {
  return "profiles"
}

参见内容:

https://gorm.io/docs/models.html#embedded_struct
https://blog.csdn.net/qq_35709559/article/details/109711919

本文声明:

5330898-d1c72b6c90e378f3.png
知识共享许可协议

目录
相关文章
|
存储 Go 索引
Golang的数据类型详解
在Go编程语言中,数据类型是一种用来存储和操作数据的结构。Go具有丰富的内置数据类型,每种类型都具有自己的特性和用途。本篇博客将介绍Golang中常见的数据类型及其应用。
84 0
|
3月前
|
Go C语言
golang的类型转换
【9月更文挑战第28天】本文介绍了Go语言中的基本数据类型转换,包括数值类型之间的转换及字符串与数值类型的互转,提供了具体代码示例说明如何使用如`float64(a)`和`strconv.Atoi`等方法。同时,文章还讲解了接口类型转换,包括类型断言和类型开关的使用方法,并展示了如何在运行时获取具体类型。最后,提到了指针类型转换的注意事项及其应用场景。
|
安全 Go
Golang 语言中的 defer 怎么使用?
Golang 语言中的 defer 怎么使用?
50 0
|
JSON Go 数据格式
Golang 语言 Struct 中字段的 Tag 怎么使用?
Golang 语言 Struct 中字段的 Tag 怎么使用?
62 0
|
JSON Java 编译器
golang之struct入门
golang之struct入门
90 0
|
Go 数据库
Golang:gorm的常用CRUD操作
Golang:gorm的常用CRUD操作
210 0
Golang:gorm的常用CRUD操作
|
XML JSON Go
Golang结构体入门
Golang结构体入门
91 0
|
SQL Go
【golang】gorm 中的Where 子句踩坑(实际项目)
【golang】gorm 中的Where 子句踩坑(实际项目)
625 0
|
SQL Prometheus Cloud Native
知识分享之Golang——gorm组件
知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。 知识分享系列目前包含Java、Golang、Linux、Docker等等。
154 0
知识分享之Golang——gorm组件