diff --git a/fastapi/_compat.py b/fastapi/_compat.py index 9934288be..f7d91c06a 100644 --- a/fastapi/_compat.py +++ b/fastapi/_compat.py @@ -110,7 +110,7 @@ if PYDANTIC_V2: def __post_init__(self) -> None: self._type_adapter: TypeAdapter[Any] = TypeAdapter( Annotated[self.field_info.annotation, self.field_info], - config=self.model_config, + config=self.model_config, # type: ignore[arg-type] ) def get_default(self) -> Any: @@ -285,7 +285,9 @@ if PYDANTIC_V2: def get_model_fields(model: Type[BaseModel]) -> List[ModelField]: return [ ModelField( - field_info=field_info, name=name, model_config=model.model_config + field_info=field_info, + name=name, + model_config=model.model_config, # type: ignore[arg-type] ) for name, field_info in model.model_fields.items() ] diff --git a/fastapi/utils.py b/fastapi/utils.py index 4c7350fea..ef818782b 100644 --- a/fastapi/utils.py +++ b/fastapi/utils.py @@ -138,7 +138,7 @@ def create_cloned_field( new_field.class_validators = field.class_validators # type: ignore[attr-defined] new_field.default = field.default # type: ignore[misc] new_field.required = field.required # type: ignore[misc] - new_field.model_config = field.model_config # type: ignore[attr-defined] + new_field.model_config = field.model_config new_field.field_info = field.field_info new_field.allow_none = field.allow_none # type: ignore[attr-defined] new_field.validate_always = field.validate_always # type: ignore[attr-defined]