Full-stack SDE Intern Assignment

Full-stack SDE Intern Assignment

site icon
2025.04.30 0
Python旅行行程管理旅行推荐系统位置服务
travel-itinerary-app 是一个全栈开发实习项目,旨在创建一个管理旅行行程的后端系统。该系统包括数据库架构设计、RESTful API 端点以及一个 MCP 服务器,用于根据旅行时长推荐行程。
View on GitHub

Overview

基本能力

产品定位

travel-itinerary-app 是一个用于管理旅行行程的后端系统,提供行程创建、查看和推荐功能。

核心功能

  1. 数据库架构设计:使用 SQLAlchemy 设计数据库架构,支持酒店住宿、地点转移、活动/游览等实体及其关系。
  2. RESTful API 端点:提供创建和查看行程的 API 端点,包括输入验证、错误处理和响应格式化。
  3. MCP 服务器:根据用户输入的旅行时长(如 2 晚、5 晚)推荐行程。

适用场景

  1. 旅行规划平台的后端系统。
  2. 个人旅行行程管理工具。
  3. 旅行推荐系统。

工具列表

  1. FastAPI:用于构建 RESTful API。
  2. SQLAlchemy:用于数据库架构设计和操作。
  3. PostgreSQL:数据库系统。
  4. Alembic:用于数据库迁移。
  5. Docker:可选,用于容器化部署。

常见问题解答

  1. 如何安装依赖? 使用 pip install fastapi uvicorn sqlalchemy pydantic 安装所需依赖。
  2. 如何运行系统? 使用 python run.py 启动系统。
  3. 如何创建新行程? 发送 POST 请求到 /itineraries 端点。
  4. 如何查看行程? 发送 GET 请求到 /itineraries/{id} 端点。
  5. 如何获取推荐行程? 发送 GET 请求到 /mcp/recommended?duration=3 端点。

使用教程

使用依赖

  1. 确保已安装 Python 3.8+。
  2. 安装依赖: bash pip install fastapi uvicorn sqlalchemy pydantic

安装教程

  1. 克隆仓库: bash git clone https://github.com/your-username/travel-itinerary.git cd travel-itinerary
  2. 安装依赖(如上所述)。
  3. 运行系统: bash python run.py

调试方式

  1. 启动系统后,访问 FastAPI 自动生成的文档页面(通常为 http://127.0.0.1:8000/docs)。
  2. 使用文档页面测试 API 端点。
  3. 查看日志输出以排查问题。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。