签入版本
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
# 验证码机制
|
||||
|
||||
:::tip 验证码
|
||||
验证码是防止自动化攻击的重要安全手段。项目使用 Pillow 生成图片验证码,存储在 Redis 中,支持防刷限流和万能验证码(演示模式)。源码位于 `src/common/utils/captcha.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 系统配置管理
|
||||
|
||||
:::tip 系统配置
|
||||
系统配置模块用于管理动态的键值对配置项,与数据字典类似但更偏向系统级参数。支持分组管理,可通过接口动态修改,无需重启服务。模块位于 `src/modules/configuration/`,路由位于 `src/modules/configuration/config/router.py` 和 `config_item/router.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 演示模式
|
||||
|
||||
:::tip 演示模式
|
||||
演示模式用于在线体验环境,开启后所有写操作(新增、编辑、删除等)将被拦截,返回"演示环境,暂无操作权限"提示。通过 `FLASK_DEMO` 环境变量控制。装饰器位于 `src/middleware/demo.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 字典模块
|
||||
|
||||
:::tip 数据字典
|
||||
数据字典用于管理系统中的枚举值和配置项,如状态、类型、性别等。通过字典编码统一管理,前端可通过 `useDictStore` 获取字典选项,避免硬编码。后端读取工具位于 `src/common/utils/dict_util.py`,内置进程内 TTL 缓存。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 异常与响应处理
|
||||
|
||||
:::tip 全局异常与响应
|
||||
项目定义了统一的响应格式和全局异常处理机制。所有 API 返回 `{code, data, msg, ok}` 标准格式,异常被捕获后也转换为相同格式。响应函数位于 `src/core/response.py`,异常类型位于 `src/core/exceptions.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 防重复提交
|
||||
|
||||
:::tip 防重复提交
|
||||
防重复提交是保障数据一致性的重要措施。通过前端防抖和后端唯一性校验双重保护,防止用户重复点击导致的数据重复提交。后端唯一性校验通过 WTForms 自定义校验器查询数据库实现。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 用户认证(JWT)
|
||||
|
||||
:::tip JWT认证
|
||||
JWT(JSON Web Token)是项目的核心认证机制。用户登录成功后获取 Token,后续请求通过 `Authorization: Bearer <token>` 头携带 Token 进行身份验证。项目内置了 Token 生成、解析、刷新和黑名单管理功能,源码位于 `src/core/jwt.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 登录日志
|
||||
|
||||
:::tip 登录日志
|
||||
登录日志记录每次登录尝试(成功/失败),包含登录账号、IP地址、浏览器信息、登录时间等。支持 IP 地理位置解析(ip2region)和 User-Agent 解析。登录逻辑位于 `src/modules/auth/service.py`,日志记录位于 `src/modules/login_log/service.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 操作日志
|
||||
|
||||
:::tip 操作日志
|
||||
操作日志中间件自动拦截写请求(POST/PUT/DELETE/PATCH)并记录操作日志,无需手动埋点。日志落库通过后台线程异步执行,不阻塞响应。源码位于 `src/middleware/operation_log.py`。
|
||||
:::
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 权限管理(RBAC)
|
||||
|
||||
:::tip RBAC权限
|
||||
项目采用基于角色的访问控制(RBAC)模型,通过用户-角色-菜单三层关系实现细粒度的权限管理。权限控制贯穿前后端:后端通过 `@check_permission` 装饰器校验(`src/core/permission.py`),前端通过 `v-perm` 指令控制按钮显隐。
|
||||
:::
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
# 事务装饰器
|
||||
|
||||
:::tip 概述
|
||||
本页讲解事务装饰器的用法,适用于中间件自动事务之外的特殊场景事务控制。
|
||||
:::
|
||||
|
||||
除了 AOP 中间件自动管理事务外,项目还提供了事务装饰器,用于特殊场景下的事务控制。
|
||||
|
||||
## @transactional 装饰器
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
# AOP 事务管理
|
||||
|
||||
:::tip 概述
|
||||
本页讲解 AOP 风格的事务管理机制——中间件自动管理数据库事务,业务代码无需手动 commit 或 rollback。
|
||||
:::
|
||||
|
||||
项目采用 AOP(面向切面编程)风格的事务管理机制,通过中间件自动管理数据库事务,业务代码无需手动调用 `commit` 或 `rollback`。
|
||||
|
||||
## 设计理念
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# 参数验证(Schema)
|
||||
|
||||
:::tip 参数验证
|
||||
项目使用 WTForms 进行请求参数验证。所有请求体参数通过 WTForms 表单类定义,框架自动解析和验证 JSON 请求体,验证失败返回标准格式错误信息。BaseForm 基类位于 `src/common/forms/base_form.py`。
|
||||
:::
|
||||
|
||||
Reference in New Issue
Block a user