前言
在 Flask 中,我们一般用蓝图 Blueprint 来处理多个模块的视图,在fastapi 中也有类似的功能通过APIRouter 来管理。
路由管理 APIRouter
如果你正在开发一个应用程序或 Web API,很少会将所有的内容都放在一个文件中。
FastAPI 提供了一个方便的工具,可以在保持所有灵活性的同时构建你的应用程序(如果你学过 Flask,那这将相当于 Flask 的 Blueprints)。
假设你的文件结构如下:
├── app
│ ├── __init__.py
│ ├── main.py
│ └── routers
│ │ ├── __init__.py
│ │ ├── items.py
│ │ └── users.py
app 目录包含了所有内容。并且它有一个空文件 app/__init__.py,它包含一个 app/main.py 文件。
routers 目录下有 items.py 和 users.py 2个文件。
假设专门用于处理用户逻辑的文件是位于 /app/routers/users.py 的子模块
from fastapi import APIRouter
router = APIRouter()
@router.get("/users/", tags=["users"])
async def read_users():
return [{"username": "Rick"}, {"username": "Morty"}]
@router.get("/

本文介绍了FastAPI中的APIRouter如何实现类似FlaskBlueprint的功能,通过模块化管理用户和物品相关的路由,以及如何在主应用中整合这些路由器。
最低0.47元/天 解锁文章
881

被折叠的 条评论
为什么被折叠?



