# PythonProject **Repository Path**: little-jenny/PythonProject ## Basic Information - **Project Name**: PythonProject - **Description**: PythonProject - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-28 - **Last Updated**: 2025-11-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 人员信息管理系统 一个基于 Python FastAPI + Vue3 的前后端分离人员信息管理系统。 ## 技术栈 ### 后端 - Python 3.12 - FastAPI - 现代、快速的 Web 框架 - SQLAlchemy - ORM - PostgreSQL - 主数据库 - Redis - 缓存和会话管理 - Pydantic - 数据验证 - JWT - 用户认证 - Alembic - 数据库迁移 - Uvicorn - ASGI 服务器 ### 前端 - Vue 3 - 渐进式 JavaScript 框架 - TypeScript - 类型安全 - Vite - 构建工具 - Vue Router - 路由管理 - Pinia - 状态管理 - Axios - HTTP 客户端 - Element Plus - UI 组件库 ## 功能特性 - ✅ 用户登录/注销 - ✅ JWT Token 认证 - ✅ 人员信息增删改查 - ✅ 分页查询 - ✅ Redis 缓存 - ✅ RESTful API ## 项目结构 ``` PythonProject/ ├── backend/ # 后端项目 │ ├── app/ │ │ ├── api/ # API 路由 │ │ ├── core/ # 核心配置 │ │ ├── models/ # 数据模型 │ │ ├── schemas/ # Pydantic schemas │ │ ├── services/ # 业务逻辑 │ │ └── main.py # 应用入口 │ ├── alembic/ # 数据库迁移 │ ├── requirements.txt │ └── .env.example ├── frontend/ # 前端项目 │ ├── src/ │ │ ├── api/ # API 接口 │ │ ├── components/ # 组件 │ │ ├── views/ # 页面 │ │ ├── router/ # 路由 │ │ ├── stores/ # 状态管理 │ │ └── main.ts │ ├── package.json │ └── vite.config.ts ├── docker-compose.yml # Docker 编排 └── README.md ``` ## 快速开始 ### 环境要求 - Python 3.12+ - Node.js 18+ - PostgreSQL 14+ - Redis 7+ - Docker & Docker Compose(可选) ### 使用 Docker 启动(推荐) ```bash # 启动所有服务 docker-compose up -d # 查看日志 docker-compose logs -f ``` 访问地址: - 前端:http://localhost:5173 - 后端 API:http://localhost:8008 - API 文档:http://localhost:8008/docs ### 手动启动 #### 1. 启动数据库服务 ```bash # 启动 PostgreSQL docker run -d --name postgres \ -e POSTGRES_USER=admin \ -e POSTGRES_PASSWORD=admin123 \ -e POSTGRES_DB=personnel_db \ -p 5432:5432 \ postgres:16 # 启动 Redis docker run -d --name redis \ -p 6379:6379 \ redis:7-alpine ``` #### 2. 启动后端 ```bash cd backend # 创建虚拟环境 python -m venv venv # 激活虚拟环境 # Windows: venv\Scripts\activate # Linux/Mac: source venv/bin/activate # 安装依赖 pip install -r requirements.txt # 复制环境变量文件 copy .env.example .env # 运行数据库迁移 alembic upgrade head # 启动服务 uvicorn app.main:app --reload --host 0.0.0.0 --port 8008 ``` #### 3. 启动前端 ```bash cd frontend # 安装依赖 npm install # 启动开发服务器 npm run dev ``` ## 默认账号 - 用户名:admin - 密码:admin123 ## API 文档 启动后端服务后,访问: - Swagger UI: http://localhost:8008/docs - ReDoc: http://localhost:8008/redoc ## 开发说明 ### 后端开发 ```bash cd backend # 创建新的数据库迁移 alembic revision --autogenerate -m "description" # 应用迁移 alembic upgrade head # 回滚迁移 alembic downgrade -1 ``` ### 前端开发 ```bash cd frontend # 开发模式 npm run dev # 构建生产版本 npm run build # 预览生产版本 npm run preview ``` ## 许可证 MIT License