File tree 3 files changed +9
-4
lines changed
3 files changed +9
-4
lines changed Original file line number Diff line number Diff line change @@ -15,6 +15,7 @@ any parts of the framework not mentioned in the documentation should generally b
15
15
* Fixed invalid relationship pointer in error objects when field naming formatting is used.
16
16
* Properly resolved related resource type when nested source field is defined.
17
17
* Prevented overwriting of pointer in custom error object
18
+ * Adhered to field naming format setting when generating OpenAPI schema.
18
19
19
20
### Added
20
21
Original file line number Diff line number Diff line change 4
4
from rest_framework .exceptions import ValidationError
5
5
from rest_framework .settings import api_settings
6
6
7
- from rest_framework_json_api .utils import undo_format_field_name
7
+ from rest_framework_json_api .utils import format_field_names , undo_format_field_name
8
8
9
9
10
10
class DjangoFilterBackend (DjangoFilterBackend ):
@@ -139,5 +139,6 @@ def get_schema_operation_parameters(self, view):
139
139
result = super ().get_schema_operation_parameters (view )
140
140
for res in result :
141
141
if "name" in res :
142
- res ["name" ] = "filter[{}]" .format (res ["name" ]).replace ("__" , "." )
142
+ name = format_field_names (res ["name" ].replace ("__" , "." ))
143
+ res ["name" ] = "filter[{}]" .format (name )
143
144
return result
Original file line number Diff line number Diff line change @@ -667,8 +667,8 @@ def map_serializer(self, serializer):
667
667
continue
668
668
669
669
if field .required :
670
- required .append (field .field_name )
671
-
670
+ required .append (format_field_name ( field .field_name ) )
671
+
672
672
schema = self .map_field (field )
673
673
if field .read_only :
674
674
schema ["readOnly" ] = True
@@ -681,6 +681,9 @@ def map_serializer(self, serializer):
681
681
if field .help_text :
682
682
# Ensure django gettext_lazy is rendered correctly
683
683
schema ["description" ] = str (field .help_text )
684
+ if field .label :
685
+ # Ensure django gettext_lazy is rendered correctly
686
+ schema ["title" ] = str (field .label )
684
687
self .map_field_validators (field , schema )
685
688
686
689
attributes [format_field_name (field .field_name )] = schema
You can’t perform that action at this time.
0 commit comments