Я новичок в FastAPI (переход с Flask), и я пытаюсь создать Pydantic Model для моего маршрута GET
from fastapi import APIRouter,Depends
from pydantic import BaseModel
from typing import Optional,List
router = APIRouter()
class SortModel(BaseModel):
field: Optional[str]
directions: List[str]
@router.get("/pydanticmodel")
def get_sort(criteria: SortModel = Depends(SortModel)):
pass #my code for handling this route.....
Когда я бегу curl -X GET http://localhost:XXXX/pydanticmodel?directions=up&directions=asc&field=id
, я получаю 422 Unprocessable Entity: {"detail":[{"loc":["body"],"msg":"field required","type":"value_error.missing"}]}
Но если я меняю directions:List[str]
- ›directions: str
, я получаю 200 OK
с direction = asc. По какой причине str
работает с параметром запроса, а List[str]
- нет? Что я делаю неправильно?
Спасибо.