gorm的模型定义:https://gorm.io/zh_CN/docs/models.html
GORM 使用一个名为ID
的字段作为每个模型的默认主键。从源码中看到它做了兼容处理,即结构体字段中的Id / ID
,或者明确定义了数据库字段的 gorm:"column:id / ID"
,都会被指定为主键;其次,如果没有指定数据库字段,gorm会使用snake_case
规则自动映射。
// schema/schema.go:252
prioritizedPrimaryField := schema.LookUpField("id")
if prioritizedPrimaryField == nil {prioritizedPrimaryField = schema.LookUpField("ID")
}
也可以显示的定义主键gorm:"primaryKey"