【发布时间】:2017-09-10 01:28:43
【问题描述】:
我有一个Task 类型,其中包含Runner 类型对象的列表。我正在尝试使用 golang gorm 将其映射到数据库,但它没有外键,并且在迁移期间我得到 invalid association
我的任务结构:
type Task struct {
gorm.Model
Name string `gorm:"not null;unique_index"`
Description string
Runners []Runner
}
我的 Runner 结构:
type Runner struct {
gorm.Model
Name string `gorm:"not null;unique"`
Description string
}
我的迁移代码:
func migrateSchema () (err error) {
db, err := context.DBProvider()
if err != nil {
return
}
db.Model(&Task{}).Related(&Runner{})
db.AutoMigrate(&Task{})
db.AutoMigrate(&Runner{})
return
}
在db.AutoMigrate(&Task{}) 上,我在控制台中收到invalid association 消息,当我检查数据库时,runners 表上没有创建外键或没有创建引用字段
我做错了什么?
【问题讨论】:
标签: postgresql go go-gorm