Files
admin/dashboard/backend
eafonyang 19ea48ffc8 feat(ota): 新增获取各「型号+灰度」分组全局最大版本号接口
- 后端新增 /api/ota/latest-versions 接口,返回所有型号和灰度的最大版本号
- 添加数据库查询,基于全量数据分组聚合版本号,避免分页误判最新版本
- 前端新增 fetchGetOtaLatestVersions 接口调用该后端接口
- 在 OTA 页面加入全局最新版本数据加载与缓存,用于 latest 标签判断
- 修改标签判定逻辑,避免仅基于当前页数据导致的错误标记
- 调用时机调整,增删改 OTA 后刷新全局最新版本数据保持同步
2026-08-17 15:11:50 +08:00
..
2026-07-30 13:56:31 +08:00
2026-07-30 13:56:31 +08:00
2026-07-30 13:56:31 +08:00

Audio Dashboard Backend

耳机品牌与型号管理平台后端 API

技术栈

  • FastAPI - 现代高性能 Web 框架
  • SQLAlchemy - ORM 框架
  • PyMySQL - MySQL 数据库驱动
  • Pydantic - 数据验证

项目结构

backend/
├── main.py              # 应用入口
├── database.py          # 数据库配置
├── models/              # 数据模型
│   ├── __init__.py
│   ├── brand.py        # 品牌模型
│   └── model.py        # 型号模型
├── routes/              # API 路由
│   ├── __init__.py
│   ├── brands.py       # 品牌 API
│   └── models.py       # 型号 API
├── schemas.py           # Pydantic 模式
├── requirements.txt     # 依赖
├── .env                 # 环境变量
└── .env.example         # 环境变量示例

安装

  1. 创建虚拟环境(可选但推荐):
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/Mac
source venv/bin/activate
  1. 安装依赖:
pip install -r requirements.txt
  1. 配置环境变量: 复制 .env.example.env 并根据需要修改配置

运行

# 开发模式
python main.py

# 或使用 uvicorn
uvicorn main:app --reload --host 0.0.0.0 --port 8000

API 文档

启动后访问:

API 端点

品牌管理

  • GET /api/brands/ - 获取品牌列表
  • GET /api/brands/{id} - 获取单个品牌
  • POST /api/brands/ - 创建品牌
  • PUT /api/brands/{id} - 更新品牌
  • DELETE /api/brands/{id} - 删除品牌

型号管理

  • GET /api/models/ - 获取型号列表
  • GET /api/models/{id} - 获取单个型号
  • POST /api/models/ - 创建型号
  • PUT /api/models/{id} - 更新型号
  • DELETE /api/models/{id} - 删除型号

数据库配置

默认配置:

  • Host: localhost
  • Port: 3306
  • Database: audio
  • User: root
  • Password: root1

可在 .env 文件中修改配置。

注意事项

  1. 首次运行前请确保数据库已创建且表结构存在
  2. 生产环境请修改 CORS 配置,限制允许的域名
  3. 生产环境请使用更安全的密码管理方式