在 automigrate GORM 中跳过一个字段

skip a field in automigrate GORM

我的结构中有一个函数要迁移到数据库。是否有一个结构标签来防止 gorm 迁移结构中的特定字段?

完全忽略一个字段

如果您的结构包含模型和非模型成员。例如,Gorm 只有一些字段应该是 read/saved/udpated。您可以完全忽略该字段(如 json 结构标记):

type MyModel struct {
  gorm.Model // Updated by gorm
  Name string // Updated by gorm
  IgnoreMe MyType `gorm:"-"` // Not touched by gorm
}

不迁移特定字段但仍然reading/updating通过 gorm

的值

如果您更改特定字段的类型或只是不想自动迁移它。 (这可能是个坏主意)

看起来这是这里的新功能:https://github.com/go-gorm/gorm/pull/4028

type MyModel struct {
    gorm.Model
    Name string `gorm:"migration"`

https://github.com/go-gorm/gorm/pull/4028/commits/8771f3c27c1fb73b4b1a21cf706f6d81819b9f41