package db import ( "fmt" "gorm.io/driver/mysql" "gorm.io/gorm" "log" "qnc-server/config" "qnc-server/model/model" ) var DB *gorm.DB func InitGorm() { dsn := fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=utf8mb4&parseTime=True&loc=Local", config.ConfigData.Database.Username, config.ConfigData.Database.Password, config.ConfigData.Database.Host, config.ConfigData.Database.Port, config.ConfigData.Database.DBName, ) var err error DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{}) if err != nil { log.Fatalf("Could not connect to the database: %v", err) } if err := DB.AutoMigrate( &model.User{}, &model.Authentication{}, &model.EvaluateMarriage{}, &model.Product{}, &model.PayOrder{}, &model.EntFeature{}, &model.Render{}, &model.CarInsurance{}, &model.CarMaintenance{}, &model.CarUnderName{}, &model.CarInsuranceInfo{}, &model.CarNewEnergyPower{}, &model.CarVinCheckInfo{}, &model.CarPersonCarVerify{}, &model.CarVehicleTransfer{}, &model.CarVehicleValuation{}, &model.CarRender{}, &model.VerifyRender{}, &model.VerifyCardName{}, &model.VerifyPhoneName{}, &model.VerifySkillCert{}, &model.VerifyBankCard{}, &model.GlobalNotification{}, &model.RenderShadow{}, &model.Query{}, ); err != nil { log.Fatalf("Could not migrate the database: %v", err) } InitRedis() // 初始化 }