File tree Expand file tree Collapse file tree 3 files changed +21
-1
lines changed
Expand file tree Collapse file tree 3 files changed +21
-1
lines changed Original file line number Diff line number Diff line change @@ -858,6 +858,8 @@ components:
858858 minimum : 0
859859 description : Version of the OBJECTTYPE for data in the object record
860860 data :
861+ type : object
862+ additionalProperties : true
861863 description : Object data, based on OBJECTTYPE
862864 geometry :
863865 allOf :
@@ -1016,6 +1018,8 @@ components:
10161018 minimum : 0
10171019 description : Version of the OBJECTTYPE for data in the object record
10181020 data :
1021+ type : object
1022+ additionalProperties : true
10191023 description : Object data, based on OBJECTTYPE
10201024 geometry :
10211025 allOf :
@@ -1178,6 +1182,8 @@ components:
11781182 type : boolean
11791183 description : Use field-based authorization
11801184 fields :
1185+ type : object
1186+ additionalProperties : true
11811187 nullable : true
11821188 title : Mode
11831189 description : Fields allowed for this token in relation to objecttype versions.
Original file line number Diff line number Diff line change 11from django .apps import AppConfig
22
33from drf_spectacular .extensions import OpenApiFilterExtension
4-
4+ from django .db import models
5+ from rest_framework .serializers import ModelSerializer
6+ from .fields import JSONObjectField
57
68def unregister_camelize_filter_extension ():
79 """
@@ -23,3 +25,6 @@ def ready(self):
2325 from . import oas_extensions # noqa
2426
2527 unregister_camelize_filter_extension ()
28+
29+ field_mapping = ModelSerializer .serializer_field_mapping
30+ field_mapping [models .JSONField ] = JSONObjectField
Original file line number Diff line number Diff line change 1+ from drf_spectacular .utils import extend_schema_field
2+ from rest_framework import serializers
3+
4+
5+ @extend_schema_field ({"type" : "object" , "additionalProperties" : True })
6+ class JSONObjectField (serializers .JSONField ):
7+ """
8+ serializers.JSONField does not have a type by default and will show `any` in api spec.
9+ """
You can’t perform that action at this time.
0 commit comments