我正在try 使用GORM将我的模型迁移到PostgreSQL数据库.但GORM不会在表中生成字符串列.以下是我的模特:
type Task struct {
gorm.Model
Answer float64
TaskParts []TaskPart `gorm:"foreignKey:TaskId"`
}
type TaskPart struct {
gorm.Model
Answer float64
Items []BackpackTaskItem `gorm:"foreignKey:TaskPartId"`
TaskId uint
}
type BackpackTaskItem struct {
gorm.Model
Weight float64
Price float64
IsFixed bool
TaskPartId uint
}
type TaskUserSolution struct {
gorm.Model
TaskPartId uint
TaskPart TaskPart `gorm:"foreignKey:TaskPartId;references:ID"`
UserId uint
User User `gorm:"foreignKey:UserId;references:ID"`
}
type User struct {
gorm.Model
username string
password string
}
然后我运行下面这行代码:
err = db.AutoMigrate(&Task{}, &TaskPart{}, &BackpackTaskItem{}, &TaskUserSolution{}, &User{})
它没有给我任何错误,并成功创建表.但是对于表用户,没有字符串列(username
和password
).它只有GORM Coumns(id、Created_Date、Delete_Date、UPDATED_Date).
这是一个错误,还是我做错了什么?
我的Go版本是最新的.我try 向其他模型添加字符串字段,但它也没有创建字符串列.
我完全扔掉了桌子,但它没有帮助.
来自go.mod的GORM版本:
gorm.io/driver/postgres v1.4.5
gorm.io/gorm v1.24.2