我使用Go-GORM连接到cockrouch数据库集群。我写了一个辅助函数来处理连接和自动迁移部分。一切工作正常,除非我想自动迁移超过1个模型。Go GORM db.Automigrate
err = helperdb.HandleMigrate(db, models.Resource{}, models.Right{})
if err != nil {
helperlog.Log("Clavem", "HandleMigrate", "Error migrating resource:"+err.Error())
return
}
这是辅助功能:
// HandleMigrate ...
func HandleMigrate(db *gorm.DB, models ...interface{}) error {
// this need to be checked
err := db.AutoMigrate(models).Error
if err != nil {
fmt.Println("Error HandleMigrate:" + err.Error())
return err
}
return nil
}
我得到以下错误:
pq: empty table name: "\"\""
当我打电话gorm.DB.AutoMigrate(&models.Resurce{}, models.Right{})
直接我没有得到任何错误。
我意识到我不需要辅助函数,但我想知道为什么辅助函数不起作用,特别是因为这是我第一次使用可变参数函数。
谢谢:)