fastapi 一个计划的增删查改rest api
时间: 2023-11-12 22:03:53 浏览: 111
ASP.NET Web API 对list增删改查的实例 REST
3星 · 编辑精心推荐
以下是一个基本的 FastAPI 实现增删查改的 REST API 的示例:
```python
from fastapi import FastAPI
from pydantic import BaseModel
app = FastAPI()
# 模拟数据库数据
db = []
# 定义模型
class Item(BaseModel):
name: str
price: float
is_offer: bool = None
# 获取所有项
@app.get("/items")
async def read_items():
return db
# 获取单个项
@app.get("/items/{item_id}")
async def read_item(item_id: int):
return db[item_id - 1]
# 创建新项
@app.post("/items")
async def create_item(item: Item):
db.append(item.dict())
return {"item": item}
# 更新项
@app.put("/items/{item_id}")
async def update_item(item_id: int, item: Item):
db[item_id - 1] = item.dict()
return {"item": item}
# 删除项
@app.delete("/items/{item_id}")
async def delete_item(item_id: int):
db.pop(item_id - 1)
return {"item_id": item_id}
```
在这个示例中,我们定义了一个名为 `Item` 的 Pydantic 模型,表示我们的数据项。我们还定义了四个路由函数来处理我们的 CRUD 操作。在每个路由函数中,我们执行对 `db` 列表的操作,模拟对数据库的操作。最后,我们可以使用 FastAPI 的 `app` 对象来运行整个应用程序。
阅读全文