fix: v3.0.1 - 修复5个代码问题

修复内容:
1. Collection 模型唯一约束逻辑错误
   - 修改约束从 (user_id, site_id, folder_id) 到 (user_id, site_id)
   - 防止用户多次收藏同一网站

2. 用户注册重复提交数据库
   - 优化为只提交一次数据库操作
   - 提升注册性能

3. JavaScript 未使用的变量
   - 删除 updateCollectButton() 中未使用的 icon 变量

4. 文件夹计数逻辑缺失
   - 为每个文件夹添加收藏数量计算
   - 修复收藏列表页面显示

5. JavaScript 错误处理不完善
   - 所有 fetch 调用添加 HTTP 状态码检查
   - 改进网络错误提示

新增文件:
- fix_collection_constraint.py - 数据库约束修复脚本
- BUGFIX_v3.0.1.md - 详细修复记录

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Jowe
2026-02-06 19:27:12 +08:00
parent 423039ce68
commit 7a6fd0c388
5 changed files with 244 additions and 8 deletions

View File

@@ -260,7 +260,7 @@ class Collection(db.Model):
site = db.relationship('Site', backref='collections')
__table_args__ = (
db.UniqueConstraint('user_id', 'site_id', 'folder_id', name='unique_user_site_folder'),
db.UniqueConstraint('user_id', 'site_id', name='unique_user_site'),
db.Index('idx_user_folder', 'user_id', 'folder_id'),
)