- 实现基于 PySide6 的 GUI 界面 - 集成 FastAPI 知识库服务器 API - 支持查看、编辑、提交 Markdown 文件 - 包含完整的 pytest-qt 测试套件 - 添加功能列表文档
2.3 KiB
2.3 KiB
知识库管理器
基于 PySide6 的知识库管理应用程序,用于连接 FastAPI 知识库服务器,查看、编辑和提交 Markdown 格式的知识库文件。
功能特性
- 服务器地址配置和连接测试
- 获取服务器上的文件列表(仅显示 .md 文件)
- 查看和编辑 Markdown 文件内容
- 保存修改到服务器
- 提交新的知识库文件
- 直观的用户界面,支持分割窗口
安装依赖
pip install -r requirements.txt
运行应用程序
Windows 用户
双击 run.bat 文件启动应用程序。
命令行运行
python main_window.py
运行测试
Windows 用户
双击 run_tests.bat 文件运行测试。
命令行运行
pytest test_app.py -v
API 端点
应用程序使用以下 API 端点:
GET /list- 获取文件列表GET /{filename}/get- 下载文件内容POST /{filename}/post- 上传文件内容
使用说明
-
配置服务器:
- 在"服务器地址"输入框中输入服务器地址(例如:
http://43.134.1.17:8800/) - 点击"配置"按钮连接服务器
- 在"服务器地址"输入框中输入服务器地址(例如:
-
查看文件列表:
- 配置成功后,点击"刷新列表"按钮
- 文件列表将显示所有 .md 文件
-
编辑文件:
- 在左侧文件列表中点击要编辑的文件
- 文件内容将显示在右侧编辑器中
- 编辑完成后点击"保存到服务器"
-
提交新文件:
- 在"文件名"输入框中输入新文件名(自动添加 .md 扩展名)
- 在编辑器中输入文件内容
- 点击"提交新文件"按钮
文件结构
.
├── main_window.py # 主应用程序窗口
├── api_client.py # API 客户端模块
├── test_app.py # pytest-qt 测试用例
├── requirements.txt # Python 依赖
├── run.bat # Windows 启动脚本
├── run_tests.bat # Windows 测试脚本
└── README.md # 本文件
技术栈
- UI 框架: PySide6 (Qt6 的官方 Python 绑定)
- HTTP 客户端: requests
- 测试框架: pytest, pytest-qt
注意事项
- 确保服务器地址正确且可访问
- 文件名会自动添加 .md 扩展名
- 网络操作有超时设置(10秒)
- 所有文件操作都有错误提示