package gormdb import ( "fmt" "git.rosy.net.cn/jx-callback/business/model" "github.com/astaxie/beego" "github.com/jinzhu/gorm" ) var ( dbStr string ) func Init() { dbStr = beego.AppConfig.String("dbConnectStr") AutoMigrate() // globals.SugarLogger.Debug("fuck") } func GetDB() *gorm.DB { db, err := gorm.Open("mysql", dbStr) if err == nil { return db } panic(fmt.Sprintf("AutoMigrate failed with error:%v", err)) } func AutoMigrate() { db := GetDB() db.SingularTable(true) // db.DropTableIfExists(&model.Place{}) // db.DropTableIfExists(&model.Store{}, &model.StoreSub{}, &model.StoreMap{}) // db.DropTableIfExists(&model.SkuCategory{}, &model.StoreSkuCategoryMap{}, &model.SkuName{}, &model.Sku{}, &model.SkuNamePlaceBind{}, &model.StoreSkuBind{}) db.AutoMigrate(&model.Place{}) db.AutoMigrate(&model.Store{}, &model.StoreSub{}, &model.StoreMap{}) db.AutoMigrate(&model.StoreSkuCategoryMap{}, &model.SkuName{}, &model.Sku{}, &model.SkuNamePlaceBind{}, &model.StoreSkuBind{}) db.Set("gorm:table_options", "CHARSET=utf8mb4").AutoMigrate(&model.SkuCategory{}) }