# 多用户改造方案 ## 📋 改动清单 ### 1. 数据模型改动 #### DiaryEntry ```python # 添加字段 user = ForeignKey(User, on_delete=CASCADE, verbose_name='用户') # 修改唯一约束 unique_together = ['user', 'date'] # 每个用户每天一条 ``` #### Experience ```python user = ForeignKey(User, on_delete=CASCADE, verbose_name='用户') ``` #### Task ```python user = ForeignKey(User, on_delete=CASCADE, verbose_name='用户') assigned_to = ForeignKey(User, ..., null=True) # 改为关联用户 ``` #### Comment ```python created_by = ForeignKey(User, on_delete=CASCADE) # 改为关联用户 ``` ### 2. 新增认证 API ``` POST /api/auth/register/ # 注册 POST /api/auth/login/ # 登录 POST /api/auth/logout/ # 登出 GET /api/auth/me/ # 当前用户 ``` ### 3. API 权限控制 所有 API 添加: ```python permission_classes = [IsAuthenticated] def get_queryset(self): return Model.objects.filter(user=self.request.user) ``` ### 4. 前端新增 - 登录页面 `/login` - 注册页面 `/register` - 未登录重定向 --- ## ⏱️ 预计工时 - 数据模型迁移:15 分钟 - 认证 API:30 分钟 - 权限控制:30 分钟 - 前端登录界面:30 分钟 - 测试验证:15 分钟 **总计:约 2 小时** --- ## ⚠️ 注意事项 1. **数据迁移** - 现有数据需要关联到默认用户 2. **向后兼容** - 保持现有 API 格式 3. **密码安全** - 使用 Django 内置加密 4. **用户隔离** - 确保用户只能访问自己的数据 --- _确认改造后开始实施_