package database import ( "fwh-toolbox-server/models/model_pgsql/query_alarm_snapshot" "log" "gorm.io/driver/postgres" "gorm.io/gorm" "gorm.io/gorm/logger" ) var PgSQL *gorm.DB func InitPostgreSQL(dsn string) (*gorm.DB, error) { db, err := gorm.Open(postgres.Open(dsn), &gorm.Config{ Logger: logger.Default.LogMode(logger.Info), }) if err != nil { log.Printf("failed to connect to PostgreSQL: %v", err) return nil, err } PgSQL = db // 自动迁移 // db.AutoMigrate(&models.User{}, …) // 初始化Models initModels(db) return db, nil } // 数据库初始化后,需初始化相关Models func initModels(db *gorm.DB) { query_alarm_snapshot.SetDefault(db) }