2025-08-16 20:30:06 +08:00
|
|
|
|
我来为您输出提示词大师项目的结构说明:
|
|
|
|
|
|
|
|
|
|
|
|
Read file: 项目结构说明.md
|
2025-02-23 09:07:52 +08:00
|
|
|
|
# 提示词大师项目结构说明
|
|
|
|
|
|
|
|
|
|
|
|
## 项目目录结构
|
|
|
|
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
flask_prompt_master/
|
|
|
|
|
|
├── app.py # Flask应用主入口,初始化应用和数据库
|
|
|
|
|
|
├── config.py # 应用配置文件,包含API密钥、数据库连接等
|
|
|
|
|
|
├── forms.py # WTForms表单定义,用于用户输入验证
|
|
|
|
|
|
├── models.py # SQLAlchemy数据模型,定义数据库表结构
|
|
|
|
|
|
├── routes.py # Flask路由和视图函数,处理HTTP请求
|
|
|
|
|
|
├── static/ # 静态资源目录
|
|
|
|
|
|
│ ├── css/ # CSS样式文件
|
|
|
|
|
|
│ │ └── style.css # 全局样式表
|
|
|
|
|
|
│ └── js/ # JavaScript文件
|
|
|
|
|
|
│ └── main.js # 前端交互逻辑
|
|
|
|
|
|
├── templates/ # Jinja2模板文件目录
|
|
|
|
|
|
│ ├── base.html # 基础模板,包含通用布局
|
|
|
|
|
|
│ ├── index.html # 首页模板,展示主要功能
|
|
|
|
|
|
│ ├── generate.html # 提示词生成页面模板
|
|
|
|
|
|
│ ├── prompt.html # 提示词展示页面模板
|
|
|
|
|
|
│ └── feedback.html # 用户反馈页面模板
|
|
|
|
|
|
├── migrations/ # 数据库迁移管理目录
|
|
|
|
|
|
│ ├── versions/ # 迁移版本历史
|
|
|
|
|
|
│ ├── alembic.ini # Alembic配置文件
|
|
|
|
|
|
│ ├── env.py # 迁移环境配置
|
|
|
|
|
|
│ └── script.py.mako # 迁移脚本模板
|
|
|
|
|
|
├── instance/ # 实例文件夹,存放运行时文件
|
|
|
|
|
|
└── app.db # SQLite数据库文件
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
## 主要模块说明
|
|
|
|
|
|
|
|
|
|
|
|
### 1. 核心模块
|
|
|
|
|
|
- **app.py**
|
|
|
|
|
|
- 初始化Flask应用实例
|
|
|
|
|
|
- 配置数据库连接和迁移
|
|
|
|
|
|
- 注册蓝图和路由
|
|
|
|
|
|
- 启动开发服务器
|
|
|
|
|
|
|
|
|
|
|
|
- **config.py**
|
|
|
|
|
|
- 应用配置管理
|
|
|
|
|
|
- 包含敏感信息(API密钥等)
|
|
|
|
|
|
- 支持环境变量覆盖
|
|
|
|
|
|
- 调试模式配置
|
|
|
|
|
|
|
|
|
|
|
|
### 2. 数据层
|
|
|
|
|
|
- **models.py**
|
|
|
|
|
|
- 定义数据库模型类
|
|
|
|
|
|
- 使用SQLAlchemy ORM
|
|
|
|
|
|
- 包含以下主要模型:
|
|
|
|
|
|
- User: 用户模型
|
|
|
|
|
|
- Prompt: 提示词模型
|
|
|
|
|
|
- Feedback: 用户反馈模型
|
|
|
|
|
|
- 定义模型关系(一对多、多对多)
|
|
|
|
|
|
|
|
|
|
|
|
- **migrations/**
|
|
|
|
|
|
- 数据库版本控制
|
|
|
|
|
|
- 使用Flask-Migrate和Alembic
|
|
|
|
|
|
- 支持数据库schema变更
|
|
|
|
|
|
- 包含迁移历史记录
|
|
|
|
|
|
|
|
|
|
|
|
### 3. 业务逻辑层
|
|
|
|
|
|
- **routes.py**
|
|
|
|
|
|
- 定义所有视图函数
|
|
|
|
|
|
- 处理HTTP请求
|
|
|
|
|
|
- 调用服务层逻辑
|
|
|
|
|
|
- 返回响应或渲染模板
|
|
|
|
|
|
- 主要功能:
|
|
|
|
|
|
- 用户认证
|
|
|
|
|
|
- 提示词生成
|
|
|
|
|
|
- 反馈收集
|
|
|
|
|
|
- 数据展示
|
|
|
|
|
|
|
|
|
|
|
|
### 4. 表现层
|
|
|
|
|
|
- **templates/**
|
|
|
|
|
|
- 使用Jinja2模板引擎
|
|
|
|
|
|
- 模板继承机制
|
|
|
|
|
|
- 包含以下主要模板:
|
|
|
|
|
|
- base.html: 基础布局
|
|
|
|
|
|
- index.html: 首页
|
|
|
|
|
|
- generate.html: 提示词生成
|
|
|
|
|
|
- prompt.html: 提示词展示
|
|
|
|
|
|
- feedback.html: 用户反馈
|
|
|
|
|
|
|
|
|
|
|
|
- **static/**
|
|
|
|
|
|
- 存放静态资源
|
|
|
|
|
|
- 包含:
|
|
|
|
|
|
- CSS样式文件
|
|
|
|
|
|
- JavaScript脚本
|
|
|
|
|
|
- 图片资源
|
|
|
|
|
|
- 使用Bootstrap框架
|
|
|
|
|
|
- 响应式设计支持
|
|
|
|
|
|
|
|
|
|
|
|
## 开发环境
|
|
|
|
|
|
- Python 3.9+
|
|
|
|
|
|
- Flask 2.0+
|
|
|
|
|
|
- SQLAlchemy 1.4+
|
|
|
|
|
|
- Flask-Migrate 3.1+
|
|
|
|
|
|
- WTForms 3.0+
|
|
|
|
|
|
- Bootstrap 5.0+
|
|
|
|
|
|
|
|
|
|
|
|
## 部署说明
|
|
|
|
|
|
1. 安装依赖:`pip install -r requirements.txt`
|
|
|
|
|
|
2. 初始化数据库:`flask db upgrade`
|
|
|
|
|
|
3. 启动开发服务器:`flask run`
|
|
|
|
|
|
4. 生产环境建议使用:
|
|
|
|
|
|
- Gunicorn作为WSGI服务器
|
|
|
|
|
|
- Nginx作为反向代理
|
|
|
|
|
|
- PostgreSQL作为生产数据库
|
2025-08-16 20:30:06 +08:00
|
|
|
|
|
|
|
|
|
|
## 项目特点
|
|
|
|
|
|
|
|
|
|
|
|
### <20><> **核心功能**
|
|
|
|
|
|
- **提示词生成**:基于用户需求智能生成提示词
|
|
|
|
|
|
- **用户管理**:完整的用户注册、登录、权限管理
|
|
|
|
|
|
- **反馈系统**:收集用户使用反馈,持续优化
|
|
|
|
|
|
- **数据展示**:直观展示提示词效果和使用统计
|
|
|
|
|
|
|
|
|
|
|
|
### 🏗️ **技术架构**
|
|
|
|
|
|
- **MVC模式**:清晰的分层架构
|
|
|
|
|
|
- **ORM映射**:使用SQLAlchemy进行数据库操作
|
|
|
|
|
|
- **模板引擎**:Jinja2提供灵活的页面渲染
|
|
|
|
|
|
- **响应式设计**:Bootstrap确保多设备兼容
|
|
|
|
|
|
|
|
|
|
|
|
### <20><> **开发特性**
|
|
|
|
|
|
- **数据库迁移**:支持数据库结构版本控制
|
|
|
|
|
|
- **配置管理**:环境变量支持,便于部署
|
|
|
|
|
|
- **静态资源**:CSS/JS文件组织清晰
|
|
|
|
|
|
- **测试支持**:完整的测试框架集成
|
|
|
|
|
|
|
|
|
|
|
|
这个项目结构设计合理,遵循了Flask最佳实践,便于维护和扩展。
|