知识分享之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
知识共享许可协议

目录
相关文章
|
9月前
|
存储 Go
Golang里空结构体struct{}的介绍和使用
【2月更文挑战第10天】Golang里空结构体struct{}的介绍和使用
76 6
|
9月前
|
Go 开发者
Golang深入浅出之-Go语言结构体(struct)入门:定义与使用
【4月更文挑战第22天】Go语言中的结构体是构建复杂数据类型的关键,允许组合多种字段。本文探讨了结构体定义、使用及常见问题。结构体定义如`type Person struct { Name string; Age int; Address Address }`。问题包括未初始化字段的默认值、比较含不可比较字段的结构体以及嵌入结构体字段重名。避免方法包括初始化结构体、自定义比较逻辑和使用明确字段选择器。结构体方法、指针接收者和匿名字段嵌入提供了灵活性。理解这些问题和解决策略能提升Go语言编程的效率和代码质量。
182 1
|
缓存 NoSQL 中间件
用golang搭建springboot风格项目结构 gin+gorm
最近学了学go语言,想练习一下用go开发web项目,项目结构弄个什么样呢。
Golang 继承
在面向对象的编程语言中,继承是一种重要的机制,它允许子类继承父类的属性和方法。然而,Go语言在设计时没有直接支持传统意义上的继承,而是提供了一种更为灵活和简洁的方式来实现类似的功能。本文将探讨Golang中实现继承的方法和最佳实践
|
JSON Go 数据格式
Golang 语言 Struct 中字段的 Tag 怎么使用?
Golang 语言 Struct 中字段的 Tag 怎么使用?
69 0
Golang面向对象编程之构造函数【struct&new】
Golang面向对象编程之构造函数【struct&new】
|
JSON Java 编译器
golang之struct入门
golang之struct入门
95 0
|
Go 数据库
Golang:gorm的常用CRUD操作
Golang:gorm的常用CRUD操作
231 0
Golang:gorm的常用CRUD操作
|
XML JSON Go
Golang结构体入门
Golang结构体入门
97 0