功能: - 前台导航: 分类Tab切换、实时搜索、健康状态指示、响应式适配 - 后台管理: 服务/分类CRUD、系统设置、登录认证(bcrypt) - 健康检查: 定时检测(5min)、独立检查URL、三态指示(在线/离线/未检测) - 云端备份: WebDAV上传/下载/恢复/删除、定时自动备份、本地备份管理 技术栈: Go + Gin + GORM + SQLite
25 lines
476 B
Go
25 lines
476 B
Go
package database
|
|
|
|
import (
|
|
"log"
|
|
"tonav-go/models"
|
|
"gorm.io/driver/sqlite"
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
var DB *gorm.DB
|
|
|
|
func InitDB(dbPath string) {
|
|
var err error
|
|
DB, err = gorm.Open(sqlite.Open(dbPath), &gorm.Config{})
|
|
if err != nil {
|
|
log.Fatalf("Failed to connect database: %v", err)
|
|
}
|
|
|
|
// 自动迁移
|
|
err = DB.AutoMigrate(&models.Category{}, &models.Service{}, &models.User{}, &models.Setting{})
|
|
if err != nil {
|
|
log.Fatalf("Failed to migrate database: %v", err)
|
|
}
|
|
}
|