Re-migrate code
This commit is contained in:
@@ -4,6 +4,7 @@ import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
"gorm.io/driver/postgres"
|
||||
"gorm.io/driver/sqlite"
|
||||
"gorm.io/gorm"
|
||||
@@ -118,4 +119,49 @@ func AutoMigrate() {
|
||||
}
|
||||
|
||||
logger.Info("数据库迁移成功")
|
||||
|
||||
// 创建默认管理员用户
|
||||
seedAdminUser()
|
||||
}
|
||||
|
||||
// seedAdminUser 创建默认管理员用户
|
||||
func seedAdminUser() {
|
||||
var count int64
|
||||
DB.Model(&models.User{}).Count(&count)
|
||||
|
||||
if count > 0 {
|
||||
return
|
||||
}
|
||||
|
||||
// 默认管理员账号
|
||||
adminUsername := "admin"
|
||||
adminPassword := "Beifan@2026"
|
||||
adminName := "管理员"
|
||||
adminEmail := "admin@example.com"
|
||||
|
||||
// 加密密码
|
||||
hashedPassword, err := bcrypt.GenerateFromPassword([]byte(adminPassword), bcrypt.DefaultCost)
|
||||
if err != nil {
|
||||
logger.Warn("管理员密码加密失败", logger.Err(err))
|
||||
return
|
||||
}
|
||||
|
||||
admin := models.User{
|
||||
Username: adminUsername,
|
||||
Password: string(hashedPassword),
|
||||
Name: adminName,
|
||||
Email: adminEmail,
|
||||
Role: "admin",
|
||||
}
|
||||
|
||||
if err := DB.Create(&admin).Error; err != nil {
|
||||
logger.Warn("创建默认管理员用户失败", logger.Err(err))
|
||||
return
|
||||
}
|
||||
|
||||
logger.Info("已创建默认管理员用户",
|
||||
logger.String("username", adminUsername),
|
||||
logger.String("password", adminPassword),
|
||||
logger.String("role", "admin"),
|
||||
)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user