首页/旅行与交通出行/Travel-Itinerary

Travel-Itinerary

查看源码
2025-5-12
Words 777Read Time 2 min
Score:85

基于FastAPI和SQLAlchemy的旅行行程管理后端系统,提供RESTful API和MCP服务器,根据旅行时长推荐行程。

🌴 旅行行程管理系统 - FastAPI 项目

这是一个使用 FastAPISQLAlchemy 构建的后端系统,用于管理旅行行程。项目提供了 RESTful API 来创建和查看行程,并包含一个 MCP(Minimum Cost Path)服务器,用于根据旅行时长推荐行程。

🚀 在线演示

🧰 技术栈

  • Python 3.11+
  • FastAPI
  • SQLAlchemy
  • SQLite(用于开发;可切换至 PostgreSQL)
  • Uvicorn
  • Render(用于部署)
  • Pydantic(用于输入验证)

📦 功能特性

  • 创建包含每日详细安排的旅行行程
  • 查看所有存储的行程
  • MCP(Minimum Cost Path)服务器,根据旅行天数推荐行程
  • 预置了泰国 普吉岛甲米 的行程数据
  • 提供交互式 Swagger UI 用于测试 API 接口

📁 项目结构

⚙️ 功能亮点

  • ✅ 创建包含酒店、交通和游览信息的旅行行程
  • ✅ 获取 2 至 8 天行程的推荐方案
  • ✅ 基于 FastAPI、SQLAlchemy 和 SQLite 的模块化代码
  • ✅ 自动生成的 Swagger 和 ReDoc API 文档
  • ✅ 使用 Render 进行在线部署

🚀 快速开始

📦 1. 克隆项目仓库

🧪 2. 创建虚拟环境

📥 3. 安装依赖

▶️ 4. 启动开发服务器

访问 http://127.0.0.1:8000/docs 查看 Swagger UI。

🧪 API 接口

方法
端点
描述
POST
/itineraries/
创建新行程
GET
/itineraries/
获取所有行程
GET
/itineraries/{id}
根据 ID 获取行程
GET
/recommendations/{duration}
根据旅行天数获取推荐行程

📸 截图

📘 Swagger UI

!Swagger UI

🔍 获取所有行程的 JSON 响应示例

!获取所有行程

🔍 根据 ID 获取行程的 JSON 响应示例

!根据 ID 获取行程

🔍 创建新行程的 JSON 响应示例

!创建新行程

🔍 根据旅行天数获取推荐行程的 JSON 响应示例

!推荐行程

🌍 在 Render 上部署

🔁 1. 推送代码到 GitHub

🚀 2. 通过 Render 部署

  • 创建一个 新的 Web 服务
  • 连接你的 GitHub 仓库
  • 设置 构建命令 为:
    • 设置 启动命令 为:
      • 设置 端口10000
      • ✅ 部署并等待生成在线链接!
      上一篇
      sova
      下一篇
      roam-research-mcp