跨域bug修复2
This commit is contained in:
@@ -222,3 +222,22 @@
|
||||
- admin.js 第12-16行:`let` → `var`(4个变量声明)
|
||||
- conduct.php 第59行:`let selectedStudentIds = []` → `var selectedStudentIds = []`
|
||||
- homework.php 第94行:`let selectedStudentIds = []` → `var selectedStudentIds = []`
|
||||
|
||||
### 阶段 10:修复 500 Internal Server Error - SQL 引用不存在的 class_id 列
|
||||
|
||||
- [x] 10.1 修复代码与数据库 schema 不匹配问题(13个文件)
|
||||
【目标对象】`backend/models/attendance.py`、`backend/services/attendance_service.py`、`backend/models/conduct.py`、`backend/services/conduct_service.py`、`backend/models/homework.py`、`backend/services/homework_service.py`、`backend/models/student.py`、`backend/middleware/permission.py`、`backend/services/auth_service.py`、`backend/schemas/student.py`、`backend/schemas/admin.py`、`backend/services/student_service.py`、`backend/routes/student.py`
|
||||
【修改目的】数据库 schema(单班级系统)中 `students` 和 `assignments` 表没有 `class_id` 列,但后端代码中大量 SQL 引用了该列,导致 MySQL 报错 → 500 Internal Server Error。同时 `PermissionChecker.get_user_subject_ids()` 和 `check_can_manage_student()` 方法不存在但被调用。
|
||||
【修改方式】全面移除所有 `class_id` 引用(单班级系统不需要),添加缺失的方法
|
||||
【修改内容】
|
||||
- attendance.py: get_class_records 移除 class_id 参数和 WHERE 条件
|
||||
- attendance_service.py: 移除 class_id 传参和 check_can_manage_student 调用
|
||||
- conduct.py: 移除 class_id 过滤条件
|
||||
- conduct_service.py: 移除 class_id 传参和 check_can_manage_student 调用
|
||||
- homework.py: 所有方法移除 class_id,get_assignments_by_class 重命名为 get_all_assignments
|
||||
- homework_service.py: 移除 class_id 传参
|
||||
- student.py: create 方法移除 class_id 参数和 INSERT 列
|
||||
- permission.py: 添加 get_user_subject_ids 和 check_can_manage_student 方法
|
||||
- auth_service.py: 移除 class_id 和 class_name 引用
|
||||
- schemas/student.py 和 schemas/admin.py: 移除 class_id 和 class_name 字段
|
||||
- student_service.py 和 routes/student.py: 移除 class_id 参数
|
||||
|
||||
Reference in New Issue
Block a user