package models import ( "log" "gorm.io/driver/sqlite" "gorm.io/gorm" ) var DB *gorm.DB type MediaHistory struct { gorm.Model SourceURL string `gorm:"uniqueIndex"` FilePath string Status string Type string // ENUM: "download", "upload" } func InitDB(dbPath string) { var err error log.Println("Connecting to SQLite at:", dbPath) DB, err = gorm.Open(sqlite.Open(dbPath), &gorm.Config{}) if err != nil { log.Fatal("Failed to connect to database:", err) } err = DB.AutoMigrate(&MediaHistory{}) if err != nil { log.Println("Database migration error:", err) } log.Println("Database initialized and migrated.") }