AnCao/scripts/migrate_drop_old_columns.go
yanlongqi 2fbeb23947 优化错题本功能和UI设计
1. 错题本系统重构:
   - 新增错题服务层 (wrong_question_service.go)
   - 实现智能推荐算法(基于掌握度和错误次数)
   - 添加掌握度追踪机制(连续答对6次标记为已掌握)
   - 支持错题筛选和排序功能
   - 新增错题统计趋势分析

2. UI优化:
   - 美化错题本界面,采用毛玻璃卡片设计
   - 添加四宫格统计卡片(错题总数、已掌握、未掌握、掌握率)
   - 优化筛选和操作按钮布局
   - 使用条状进度条显示掌握度
   - 改进响应式设计,优化移动端体验

3. 功能完善:
   - 修复判断题答案显示问题
   - 当掌握率100%时禁用"开始练习"按钮
   - 删除测试文件和 nul 文件
   - 更新文档 (CLAUDE.md)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-08 04:20:42 +08:00

45 lines
1.2 KiB
Go

package main
import (
"ankao/internal/database"
"log"
"os"
)
func main() {
// 直接设置数据库配置
os.Setenv("DB_HOST", "localhost")
os.Setenv("DB_PORT", "5432")
os.Setenv("DB_USER", "postgres")
os.Setenv("DB_PASSWORD", "root")
os.Setenv("DB_NAME", "ankao")
// 连接数据库
if err := database.InitDB(); err != nil {
log.Fatalf("数据库连接失败: %v", err)
}
db := database.GetDB()
log.Println("开始迁移:删除 wrong_questions 表的旧字段...")
// 删除 wrong_answer 和 correct_answer 字段
// 这些字段在新版本中已移至 wrong_question_history 表
migrations := []string{
"ALTER TABLE wrong_questions DROP COLUMN IF EXISTS wrong_answer",
"ALTER TABLE wrong_questions DROP COLUMN IF EXISTS correct_answer",
"ALTER TABLE wrong_questions DROP COLUMN IF EXISTS wrong_count", // 也删除旧的 wrong_count 字段(如果存在)
}
for _, migration := range migrations {
log.Printf("执行: %s", migration)
if err := db.Exec(migration).Error; err != nil {
log.Printf("警告: 执行失败 - %v (字段可能已不存在)", err)
} else {
log.Println("✓ 执行成功")
}
}
log.Println("迁移完成!")
}