3

I'm handling this request in my code (Python3.9, FastAPI, Pydantic):

https://myapi.com/api?params[A]=1&params[B]=2

I tried to make following model: BaseModel for handling special get request (for fastapi.Query and pydantic.Field is same)

I also set up aliases for it, but in swagger docs I see next field: Snap of the swagger docs

There are fields that are specified as extra_data

So, if I specify query params in parameters of my endpoint like this:

@app.get('/')
def my_handler(a: str = Query(None, alias="params[A]")):
     return None

Everything works fine. How can I fix it? I want to initialize my pydantic.BaseModel with speacial aliases using this way and avoid usage of query-params in

class MyModel(BaseModel):
    a = Field(alias="params[A]") 
    b = Field(alias="params[B]")
def my_handler(model: MyModel = Depends()):
    return model.dict()
  • 1
    Did you find a solution to this? Ran into the same problem while trying to use an alias to query nested objects via mongodb... ("object_name.attribute") – acy Nov 05 '21 at 18:33

0 Answers0