首页/旅行与交通出行/travel-itinerary-app

travel-itinerary-app

查看源码
2025-5-12
Words 829Read Time 3 min
Score:85

一个基于FastAPI和SQLAlchemy的全栈后端应用,用于管理旅行行程,提供行程推荐服务。

Python

全栈开发实习生项目作业

!Alt Text

项目目标

  • 创建一个用于管理旅行行程的后端系统,包含以下组件:
  1. 使用 SQLAlchemy 设计并实现旅行行程的数据库架构和模型
  1. 提供创建和查看行程的 RESTful API 接口
  1. 实现 MCP 服务器,根据行程天数推荐行程

详细需求

1. 数据库架构 📌

  • 使用 SQLAlchemy 设计和实现数据库架构
    • 架构应支持以下内容:
      • 每日的酒店住宿
      • 地点之间的交通
      • 活动/游览
      • 这些实体之间的关系
    • 为泰国的普吉岛和甲米地区填充真实的示例数据。
    • 包含 2 到 8 晚的推荐行程。
    • 实现适当的关系、约束和索引。

2. API 接口

  • 使用 FastAPI 创建 RESTful API 接口,支持以下功能:
    • 创建新的旅行行程
    • 查看现有的旅行行程
  • 实现输入验证、错误处理和响应格式化
  • 提供 API 文档,包含示例请求/响应格式

示例接口:

  • POST /itineraries: 创建新行程
  • GET /itineraries/{id}: 查看现有行程

3. MCP 服务器

  • 实现 MCP 服务器,根据给定的天数返回推荐行程。
    • 示例输入:2 nights, 5 nights
    • 示例输出:根据请求的天数生成的推荐行程。

项目设置

环境要求

  • Python 3.8+
  • FastAPI
  • SQLAlchemy
  • PostgreSQL(或其他 SQL 数据库)
  • Alembic(用于数据库迁移)
  • Docker(可选)

📂 项目结构

描述:

  • main.py: FastAPI 应用的入口文件,用于启动 API 接口。
  • mcp_server.py: 实现 MCP 服务器逻辑,根据天数推荐行程。
  • models.py: 包含旅行行程数据库架构的 SQLAlchemy 模型,包括住宿、交通和活动之间的关系。
  • run.py: 用于启动 FastAPI 应用和服务器的脚本。
  • README.md: 本项目文档,包含项目说明、设置指南和 API 详情。
  • schemas.py: 定义用于请求和响应中输入验证和数据序列化的 Pydantic 模型。
  • seed_data.py: 为普吉岛和甲米地区填充真实示例数据的脚本,涵盖 2 到 8 晚的行程。

安装

  1. 克隆仓库:

    运行系统

    1. 安装依赖:

    2. 启动系统:

    使用指南 🚀

    创建新行程:POST /itineraries

    请求体:
    响应:

    查看行程:GET /itineraries/{id}

    响应:

    获取推荐行程:GET /mcp/recommended?duration=3

    响应:

    联系我 🚀

    许可证 📜

    本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。

    持续学习与探索 🚀

    祝编码愉快!😊 如果本项目对你有帮助,请在 GitHub 上给它一个 ⭐ 吧!
    上一篇
    mcp-server-galaxy-tool
    下一篇
    Vulnerable-file-reader-server