@@ -508,7 +508,7 @@ def _get_model_name(cls, path_name: str, method: str, suffix: str) -> str:
508508 camel_path_name = snake_to_upper_camel (normalized )
509509 return f"{ camel_path_name } { method .capitalize ()} { suffix } "
510510
511- def parse_all_parameters ( # noqa: PLR0912, PLR0914, PLR0915
511+ def parse_all_parameters ( # noqa: PLR0912, PLR0914
512512 self ,
513513 name : str ,
514514 parameters : list [ReferenceObject | ParameterObject ],
@@ -551,21 +551,21 @@ def parse_all_parameters( # noqa: PLR0912, PLR0914, PLR0915
551551 class_name = reference .name ,
552552 )
553553 effective_required = parameter .required
554- use_default_with_required = (
555- effective_required and self .apply_default_values_for_required_fields and effective_has_default
556- )
557- new_field = self .get_object_field (
558- field_name = field_name ,
559- field = param_schema ,
560- field_type = self .parse_item (field_name , param_schema , [* path , name , parameter_name ]),
561- original_field_name = parameter_name ,
562- required = effective_required ,
563- alias = alias ,
564- effective_default = effective_default ,
565- effective_has_default = effective_has_default ,
554+ fields .append (
555+ self .get_object_field (
556+ field_name = field_name ,
557+ field = param_schema ,
558+ field_type = self .parse_item (field_name , param_schema , [* path , name , parameter_name ]),
559+ original_field_name = parameter_name ,
560+ required = effective_required ,
561+ alias = alias ,
562+ effective_default = effective_default ,
563+ effective_has_default = effective_has_default ,
564+ use_default_with_required = effective_required
565+ and self .apply_default_values_for_required_fields
566+ and effective_has_default ,
567+ )
566568 )
567- new_field .use_default_with_required = use_default_with_required
568- fields .append (new_field )
569569 else :
570570 data_types : list [DataType ] = []
571571 object_schema : JsonSchemaObject | None = None
@@ -601,48 +601,48 @@ def parse_all_parameters( # noqa: PLR0912, PLR0914, PLR0915
601601 class_name = reference .name ,
602602 )
603603 effective_required = parameter .required
604- use_default_with_required = (
605- effective_required and self .apply_default_values_for_required_fields and effective_has_default
606- )
607604 # Handle multiple aliases (Pydantic v2 AliasChoices)
608605 single_alias : str | None = None
609606 validation_aliases : list [str ] | None = None
610607 if isinstance (alias , list ):
611608 validation_aliases = alias
612609 else :
613610 single_alias = alias
614- new_field = self .data_model_field_type (
615- name = field_name ,
616- default = effective_default ,
617- data_type = data_type ,
618- required = effective_required ,
619- alias = single_alias ,
620- validation_aliases = validation_aliases ,
621- constraints = object_schema .model_dump (exclude_none = True )
622- if object_schema and self .is_constraints_field (object_schema )
623- else None ,
624- nullable = object_schema .nullable
625- if object_schema and self .strict_nullable and object_schema .nullable is not None
626- else (
627- False
628- if object_schema and self .strict_nullable and (effective_has_default or effective_required )
629- else None
630- ),
631- strip_default_none = self .strip_default_none ,
632- extras = self .get_field_extras (object_schema ) if object_schema else {},
633- use_annotated = self .use_annotated ,
634- use_serialize_as_any = self .use_serialize_as_any ,
635- use_field_description = self .use_field_description ,
636- use_field_description_example = self .use_field_description_example ,
637- use_inline_field_description = self .use_inline_field_description ,
638- use_default_kwarg = self .use_default_kwarg ,
639- original_name = parameter_name ,
640- has_default = effective_has_default ,
641- type_has_null = object_schema .type_has_null if object_schema else None ,
642- use_serialization_alias = self .use_serialization_alias ,
611+ fields .append (
612+ self .data_model_field_type (
613+ name = field_name ,
614+ default = effective_default ,
615+ data_type = data_type ,
616+ required = effective_required ,
617+ alias = single_alias ,
618+ validation_aliases = validation_aliases ,
619+ constraints = object_schema .model_dump (exclude_none = True )
620+ if object_schema and self .is_constraints_field (object_schema )
621+ else None ,
622+ nullable = object_schema .nullable
623+ if object_schema and self .strict_nullable and object_schema .nullable is not None
624+ else (
625+ False
626+ if object_schema and self .strict_nullable and (effective_has_default or effective_required )
627+ else None
628+ ),
629+ strip_default_none = self .strip_default_none ,
630+ extras = self .get_field_extras (object_schema ) if object_schema else {},
631+ use_annotated = self .use_annotated ,
632+ use_serialize_as_any = self .use_serialize_as_any ,
633+ use_field_description = self .use_field_description ,
634+ use_field_description_example = self .use_field_description_example ,
635+ use_inline_field_description = self .use_inline_field_description ,
636+ use_default_kwarg = self .use_default_kwarg ,
637+ original_name = parameter_name ,
638+ has_default = effective_has_default ,
639+ type_has_null = object_schema .type_has_null if object_schema else None ,
640+ use_serialization_alias = self .use_serialization_alias ,
641+ use_default_with_required = effective_required
642+ and self .apply_default_values_for_required_fields
643+ and effective_has_default ,
644+ )
643645 )
644- new_field .use_default_with_required = use_default_with_required
645- fields .append (new_field )
646646
647647 if OpenAPIScope .Parameters in self .open_api_scopes and fields :
648648 # Using _create_data_model from parent class JsonSchemaParser
0 commit comments