# gym **Repository Path**: WatermelonAnimal/gym ## Basic Information - **Project Name**: gym - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-18 - **Last Updated**: 2026-04-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于规则引擎的健身房训练计划推荐系统(Python + Django + Vue) 本项目是一个**前后端分离**的健身训练计划推荐系统,核心特点是: - 使用**规则引擎**根据用户画像(目标/水平/训练频率/器械条件)生成训练计划 - 支持**注册/登录(JWT)** - 支持**按计划训练日打卡**(只能打今天,缺卡标红) - 支持**训练历史记录(重量/次数/RPE)**,自动计算**PR(估算 1RM)**与趋势 - 支持**计划快照(Plan Snapshot)可追溯**:每次推荐都会保存计划版本,打卡/训练记录绑定快照,便于论文与答辩展示“闭环一致性” --- ## 目录结构 ``` Project/ backend/ # Django 后端 frontend/ # Vue3 + Vite 前端 .venv/ # Python 虚拟环境(本地) README.md DETAILS.md ``` --- ## 环境要求 - **Windows 10/11** - **Python 3.11+** - **Node.js 18+(推荐 20+)** - npm --- ## 后端搭建与启动(Django) 在项目根目录 `Project/` 下打开 PowerShell: 1) 创建虚拟环境并安装依赖 ```powershell python -m venv .venv .\.venv\Scripts\python.exe -m pip install --upgrade pip .\.venv\Scripts\pip.exe install -r backend\requirements.txt ``` 2) 准备环境变量(开发环境) ```powershell Copy-Item backend\.env.example backend\.env -ErrorAction SilentlyContinue ``` 3) 迁移数据库并启动 ```powershell .\.venv\Scripts\python.exe backend\manage.py migrate .\.venv\Scripts\python.exe backend\manage.py runserver 8000 ``` 后端地址:`http://127.0.0.1:8000` > 可选:创建管理员(可登录 Django Admin) ```powershell .\.venv\Scripts\python.exe backend\manage.py createsuperuser ``` --- ## 前端搭建与启动(Vue3) 新开一个 PowerShell: ```powershell cd F:\pycode\Project\frontend npm install npm run dev ``` 前端地址(Vite 输出为准,通常):`http://localhost:5173` --- ## 使用流程(最短路径) 1) 打开前端 → 注册/登录(可使用下方预置账号) 2) 在「配置」中填写目标/水平/每周训练天数/器械条件 3) 点击「保存并生成推荐」→ 右侧得到计划(并自动生成计划快照) 4) 在「打卡」中只能给**今天**打卡,过去训练日未打卡会标红 5) 在「训练记录」中记录重量/次数/RPE → 自动计算 PR 与趋势 ### 预置测试账号 | 用户名 | 密码 | 说明 | |--------|------|------| | `admin` | `Admin123!` | 管理员账号 | | `demo` | `DemoPass123!` | 演示账号 | > 如果 `admin` 密码不对,可通过以下命令重置: > ```powershell > .\.venv\Scripts\python.exe backend\manage.py changepassword admin > ``` --- ## 版本管理(Git)建议 项目根目录已提供 `.gitignore`,用于避免提交本地环境与敏感/体积文件。通常不应提交: - `backend/.env`(本地密钥/配置,仓库仅保留 `backend/.env.example`) - `backend/db.sqlite3`(本地数据库) - `frontend/node_modules/`、`frontend/dist/` - `.venv/` --- ## 常见问题 - **打卡加载失败 / 500**:请先确保后端已 `migrate`;数据库缺表会导致接口报错。 - **跨域问题**:开发默认允许 `http://localhost:5173`,可在 `backend/.env` 调整 `CORS_ALLOWED_ORIGINS`。