mirror of https://github.com/tiangolo/fastapi.git
consider alias in form
This commit is contained in:
parent
297d2594f8
commit
8c1eb0f984
|
|
@ -262,7 +262,7 @@ if PYDANTIC_V2:
|
||||||
def create_body_model(
|
def create_body_model(
|
||||||
*, fields: Sequence[ModelField], model_name: str
|
*, fields: Sequence[ModelField], model_name: str
|
||||||
) -> Type[BaseModel]:
|
) -> Type[BaseModel]:
|
||||||
field_params = {f.field_info.alias: (f.field_info.annotation, f.field_info) for f in fields}
|
field_params = {f"{f.field_info.alias}": (f.field_info.annotation, f.field_info) for f in fields}
|
||||||
BodyModel: Type[BaseModel] = create_model(model_name, **field_params) # type: ignore[call-overload]
|
BodyModel: Type[BaseModel] = create_model(model_name, **field_params) # type: ignore[call-overload]
|
||||||
return BodyModel
|
return BodyModel
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,3 @@
|
||||||
from typing import Annotated
|
|
||||||
|
|
||||||
from fastapi import FastAPI, Form
|
from fastapi import FastAPI, Form
|
||||||
from starlette.testclient import TestClient
|
from starlette.testclient import TestClient
|
||||||
|
|
||||||
|
|
@ -7,11 +5,11 @@ from starlette.testclient import TestClient
|
||||||
app:FastAPI = FastAPI()
|
app:FastAPI = FastAPI()
|
||||||
|
|
||||||
@app.post("/testing_alias")
|
@app.post("/testing_alias")
|
||||||
async def check_alias(id_test: Annotated[int, Form(alias="otherId")]):
|
async def check_alias(id_test: int = Form(alias="otherId")):
|
||||||
return {"other_id":id_test}
|
return {"other_id":id_test}
|
||||||
|
|
||||||
@app.patch("/testing")
|
@app.patch("/testing")
|
||||||
async def check_without_alias(id_test:Annotated[int, Form()]):
|
async def check_without_alias(id_test:int = Form()):
|
||||||
return {"id_test":id_test}
|
return {"id_test":id_test}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue