为什么gorm
忽略sql:"index"
标签?没有创建索引。
这里使用的数据库是 PostgreSQL(导入_ "github.com/lib/pq"
)。使用此Model
结构(因为默认gorm.Model
使用自动递增数字 - serial
- 作为主键,我想id
自己设置):
type Model struct {
ID int64 `sql:"type:bigint PRIMARY KEY;default:0"`
CreatedAt time.Time
UpdatedAt time.Time
DeletedAt *time.Time `sql:"index"`
}
实际模型之一是:
type TUHistory struct {
Model
TUID int64 `json:"tu_id,string" gorm:"column:tu_id" sql:"index"`
}
func (x *TUHistory) TableName() string {
return "tu_history"
}
并且该表是由db.CreateTable(&TUHistory{})
它正确创建表的,但索引除外。
作为临时解决方法,我会db.Model(&TUHistory{}).AddIndex("ix_tuh_tu_id", "tu_id")
创建索引。