Add support for Pydantic models for parameters using Query, Cookie, Header (#12199)

This commit is contained in:
Sebastián Ramírez
2024-09-17 20:54:10 +02:00
committed by GitHub
parent 0903da78c9
commit 55035f440b
72 changed files with 3253 additions and 45 deletions

View File

@@ -0,0 +1,21 @@
from typing import List
from fastapi import FastAPI, Query
from pydantic import BaseModel, Field
from typing_extensions import Literal
app = FastAPI()
class FilterParams(BaseModel):
model_config = {"extra": "forbid"}
limit: int = Field(100, gt=0, le=100)
offset: int = Field(0, ge=0)
order_by: Literal["created_at", "updated_at"] = "created_at"
tags: List[str] = []
@app.get("/items/")
async def read_items(filter_query: FilterParams = Query()):
return filter_query