FastAPI SQLAlchemy 架构项目技术文档

FastAPI SQLAlchemy 架构项目技术文档

安装指南

环境要求

  • Python 3.10
  • Docker (可选)

依赖安装

  1. 克隆项目到本地:

    git clone https://github.com/your-repo/fastapi-sqlalchemy.git
    cd fastapi-sqlalchemy
    
  2. 安装项目依赖:

    pip install -r requirements.txt
    

数据库设置

  1. 创建一个名为 fsm 的数据库,并选择 utf8mb4 编码。
  2. 安装并启动 Redis 服务。

环境配置

  1. 进入 backend/app/ 目录:

    cd backend/app/
    
  2. 创建 .env 文件:

    touch .env
    
  3. 复制 .env.example.env

    cp .env.example .env
    

数据库迁移

  1. 进入 backend/app/ 目录:

    cd backend/app/
    
  2. 生成迁移文件:

    alembic revision --autogenerate
    
  3. 执行数据库迁移:

    alembic upgrade head
    

项目的使用说明

启动服务

  1. 执行 backend/app/main.py 文件启动服务:

    python backend/app/main.py
    
  2. 浏览器访问:

    http://127.0.0.1:8000/api/v1/docs
    

Docker 启动

  1. 进入 docker-compose.yml 文件所在目录:

    cd deploy/docker-compose/
    
  2. 创建环境变量文件 .env

    cp .env.server ../../backend/app/.env
    
  3. 执行一键启动命令:

    docker-compose up -d --build
    
  4. 等待命令自动完成,浏览器访问:

    http://127.0.0.1:8000/api/v1/docs
    

项目API使用文档

基本API路径

  • 根路径: /api/v1
  • 文档路径: /api/v1/docs

主要API接口

  1. GET /api/v1/items: 获取所有项目列表。
  2. POST /api/v1/items: 创建新项目。
  3. GET /api/v1/items/{item_id}: 获取指定ID的项目。
  4. PUT /api/v1/items/{item_id}: 更新指定ID的项目。
  5. DELETE /api/v1/items/{item_id}: 删除指定ID的项目。

请求示例

  • 获取所有项目:

    GET /api/v1/items HTTP/1.1
    Host: 127.0.0.1:8000
    
  • 创建新项目:

    POST /api/v1/items HTTP/1.1
    Host: 127.0.0.1:8000
    Content-Type: application/json
    
    {
        "name": "New Item",
        "description": "This is a new item."
    }
    

项目安装方式

传统安装

  1. 安装依赖项:

    pip install -r requirements.txt
    
  2. 创建数据库 fsm,选择 utf8mb4 编码。

  3. 安装并启动 Redis。

  4. backend/app/ 目录下创建 .env 文件,并复制 .env.example.env

  5. 执行数据库迁移。

  6. 启动服务。

Docker 安装

  1. 进入 docker-compose.yml 文件所在目录,创建环境变量文件 .env
  2. 执行一键启动命令。
  3. 等待命令自动完成,访问服务。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值