修复角色创建时出现的 AttributeError: 'dict' object has no attribute 'model_dump' 错误,将 role_data.model_dump() 改为 dict(role_data) 以兼容 Pydantic v1 和 v2。 同时优化了搜索布局和样式,确保查询条件和按钮在同一行显示: 1. 修改 admin-crud.css 添加搜索区域不换行样式 2. 调整 role-crud.ts 中的 search 配置 3. 将 GET 查询接口改为 POST /search 方式 4. 修复角色权限分配时的权限加载问题
1.8 KiB
1.8 KiB
Bug 修复计划(版本2)
问题描述
问题1:查询条件布局仍未生效
前端页面中用户、角色、权限的查询条件和查询、重置按钮没有在同一行显示,需要重新检查配置。
问题2:删除 GET 查询接口
用户要求删除原有的 GET 方式查询接口,只保留 POST 方式。
分析
问题1原因分析
fast-crud 的搜索布局配置可能需要调整。当前配置:
search: {
show: true,
inline: true,
expand: false,
}
可能需要调整为:
search: {
show: true,
form: {
inline: true,
},
expand: false,
}
问题2修改方案
删除后端三个路由文件中的 GET 查询接口(@router.get("/")),只保留 POST /search 接口。
修改步骤
步骤1:修复前端搜索布局配置
修改三个 CRUD 配置文件,调整搜索布局配置:
user-crud.ts: 调整 search 配置role-crud.ts: 调整 search 配置permission-crud.ts: 调整 search 配置
步骤2:删除后端 GET 查询接口
删除三个后端路由文件中的 GET 查询接口:
users/urls.py: 删除@router.get("/")接口roles/urls.py: 删除@router.get("/")接口permissions/urls.py: 删除@router.get("/")接口
修改文件清单
| 文件 | 修改内容 |
|---|---|
frontend/src/modules/admin/views/users/user-crud.ts |
调整 search 布局配置 |
frontend/src/modules/admin/views/roles/role-crud.ts |
调整 search 布局配置 |
frontend/src/modules/admin/views/permissions/permission-crud.ts |
调整 search 布局配置 |
backend/auth/apps/users/urls.py |
删除 GET /users/ 查询接口 |
backend/auth/apps/roles/urls.py |
删除 GET /roles/ 查询接口 |
backend/auth/apps/permissions/urls.py |
删除 GET /permissions/ 查询接口 |