用户与权限
系统采用简单的两级角色模型:超级管理员 与 普通用户。
角色模型
| 能力 | 超级管理员 | 普通用户 |
|---|---|---|
| 创建 / 编辑题目 | ✅ 全部 | ✅ 自己的 |
| 批量导入 | ✅ 全部 | ✅ 自己的 |
| 查看导入任务 | ✅ 全部 | ✅ 自己的 |
| 审核 / 发布 | ✅ 全部 | ✅ 自己的内容 |
| 知识点 / 标签 / 学科 | ✅ | ✅ 创建 |
| 标签分类管理 | ✅ | ❌ |
| AI 供应商与模型 | ✅ | ❌ |
| 系统参数 | ✅ | ❌ |
| 用户管理 | ✅ | ❌ |
| 操作审计 | ✅(仅超管) | ❌ |
桌面版个人使用
桌面版个人使用通常只有一个管理员账号;开启 局域网共享 后,可为同事分别创建普通用户账号。
用户字段
- 用户名、姓名、头像
is_superuser(管理员标记)、is_active(启用状态)subject_id(可选,关联学科)last_login、login_count(登录统计)
常见操作
- 创建用户:超级管理员在用户管理中新建账号并设定角色。
- 修改资料:用户可修改自己的资料。
- 修改密码:用户可修改自己的密码。
- 启用 / 停用:管理员可停用账号。
首次初始化
首次启动通过初始化向导创建第一个超级管理员:
- 检测是否已配置。
- 选择数据库类型(桌面版 SQLite / 服务器版 MySQL)并校验连接。
- 运行数据库迁移。
- 创建管理员账号。
桌面版通过托盘「打开题库」进入向导;服务器版可用脚本创建超管:
bash
docker compose exec backend python scripts/create_superuser.py