辣评个人中心功能完善(二十五)
个人中心功能概述
个人中心是用户管理自己信息和查看个人数据的重要入口。本次完善优化了个人信息管理、投稿展示、排名显示、任务追踪等多个功能模块。
完善目标
优化个人信息管理
改进投稿展示界面
完善排名显示逻辑
集成任务追踪功能
提升整体用户体验
个人信息管理
用户信息展示
<template>
<div class="profile-header">
<div class="avatar-section">
<el-avatar :src="userInfo.avatar" :size="100">
</el-avatar>
...
辣评关键 Bug 修复总结(二十七)
时间线说明
本文创建于 2026-02-06,后续持续补充了同一阶段内的关键修复案例。
文中各条 Git 提交 以实际提交日期为准,部分提交晚于本文初稿时间,属于后续追记内容。
Bug 修复总结概述
在辣评项目的开发过程中,我们遇到并解决了多个关键 Bug。本文总结了这些重要的 Bug 修复经验,包括问题现象、排查过程、解决方案和预防措施。
主要 Bug 类型
数据库迁移问题
前端空白页面问题
跳转逻辑错误
SQL 歧义问题
重复提交处理
Bug 1: 数据库表自动迁移问题
问题现象
Git 提交: e7c9c54 - fix: 修复数据库表自动迁移问题,添加 DebtRecord 模型(提交日期:2026-02-28)
症状:
应...
辣评系统筛选功能统一优化(十六)
筛选功能优化概述
在辣评平台的使用过程中,我们发现筛选功能存在交互不一致、用户体验不佳等问题。本次优化统一了全站筛选器的交互方式,提升了用户体验。
优化目标
统一筛选器交互方式
实现下拉选择替代输入框
添加筛选记忆功能
优化防抖处理
提升响应速度
问题分析
原有问题
交互不一致
有的筛选器需要手动点击”查询”按钮
有的筛选器自动触发查询
用户体验混乱
输入方式不友好
届数筛选使用输入框,容易输入错误
没有提示可选值
需要记忆届数
性能问题
频繁触发查询
没有防抖处理
...
MySQL 数据误删除恢复指南:利用 Binlog 日志逆转 DELETE 操作
MySQL 数据误删除恢复指南:利用 Binlog 日志逆转 DELETE 操作
今天我们来探讨一个常见的数据库问题:误删除数据。MySQL 作为广泛使用的关系型数据库,启用了二进制日志(Binlog)后,我们可以通过它恢复误删除的数据。本文将从如何获取删除部分的 Binlog 日志开始,逐步指导你将 DELETE 操作转换为 INSERT 语句,实现数据恢复。整个过程使用一个简单的 Bash 脚本,高效且易于操作。
本文以一个虚构的测试表 test_db.test_table 为例,模拟误删除记录的恢复过程。注意:恢复前,请确保 MySQL 已启用 Binlog(log_bin 参数),并备份数据库以防万一。
为什么用 Binlog 恢复数据?
Binlog 是 MySQL 的...
辣评前端性能优化与构建(十五)
概述
随着辣评前端功能的不断增加,特别是引入了 Element Plus UI 框架、ECharts 图表库和 html2canvas 等大型依赖库,前端应用的构建产物体积和运行时性能面临了严峻挑战。本文档详细记录了 2025 年 9 月进行的前端性能优化工作,包括 Vite 构建优化、Element Plus 循环依赖问题解决、代码分割策略、打包产物优化和开发体验改进等方面的工作。
一、Vite 构建系统概述
1.1 Vite 配置架构
辣评前端采用 Vite 作为构建工具,相比 Webpack 具有以下优势:
// admin-vue/vite.config.ts
import { defineConfig } from 'vite'
import vue from '@...
MySQL 删除重复数据:使用存储过程高效处理
使用存储过程删除表重复数据
概述
本文件提供指导,说明如何使用两个 MySQL 存储过程 DeleteDuplicatesSingleTable 和 BatchDeleteDuplicates 来删除数据库表中的重复记录。这两个存储过程设计用于高效处理单个或多个表,包含错误处理和分批处理功能,以最小化性能影响。
前提条件
MySQL 版本:5.7 或更高版本
用户权限:用户需具备目标数据库的 CREATE、ALTER、DELETE、SELECT 和 EXECUTE 权限。
表结构:表必须包含一个 id 列作为主键或唯一标识符。
备份:在执行删除操作前,始终备份目标数据表。
存储过程
1. D...
辣评后端安全与性能优化(十四)
概述
在辣评项目的发展过程中,随着用户数量的增加和功能的复杂化,后端系统面临着越来越多的安全和性能挑战。本文档详细记录了我们在 2025 年 8 月进行的后端安全与性能优化工作,包括数据库连接池优化、SQL 查询优化、权限验证机制、错误处理与日志系统,以及性能监控等方面的改进。
一、数据库连接池优化
1.1 连接池配置
在 Go + GORM 的架构中,数据库连接池是性能的关键。我们对 SQLite 数据库的连接进行了优化:
// cmd/server/database/database.go
func InitDB() error {
// 配置 SQLite 连接
db, err := gorm.Open(sqlite.Open(dbPath), &...
LCR170-优化逆序对计数算法:从暴力解法到归并排序
优化逆序对计数算法:从暴力解法到归并排序
问题背景
在数组中,逆序对是指满足 i < j 且 record[i] > record[j] 的下标对 (i, j)。给定一个整数数组 record,我们需要计算其逆序对的数量。例如,对于数组 [3, 1, 2],逆序对有 (3, 1) 和 (3, 2),总数为 2。然而,当数组规模较大时,简单的暴力解法会导致“时间超限”(Time Limit Exceeded)。本文将探讨如何从 O(n²) 的暴力解法优化到 O(n log n) 的归并排序解法。
暴力解法及其瓶颈
最初的解法使用两层循环,检查每一对 (i, j)(其中 j < i),如果 record[j] > record[i],则计数加 1。代码如下:
...
共计 121 篇文章,16 页。