mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-07-16 03:02:37 +03:00
Improve schema generation for DictField and HStoreField
Make `serializers.DictField` and `serializers.HStoreField` generate objects with `additionalProperties` defined by their `.child`.
This commit is contained in:
parent
4a1d773b8f
commit
d9dc01c1dc
|
@ -500,12 +500,17 @@ class AutoSchema(ViewInspector):
|
|||
'format': 'binary'
|
||||
}
|
||||
|
||||
# Also handles serializers.HStoreField,
|
||||
if isinstance(field, serializers.DictField):
|
||||
return {
|
||||
"type": "object",
|
||||
"additionalProperties": self.map_field(field.child),
|
||||
}
|
||||
|
||||
# Simplest cases, default to 'string' type:
|
||||
FIELD_CLASS_SCHEMA_TYPE = {
|
||||
serializers.BooleanField: 'boolean',
|
||||
serializers.JSONField: 'object',
|
||||
serializers.DictField: 'object',
|
||||
serializers.HStoreField: 'object',
|
||||
}
|
||||
return {'type': FIELD_CLASS_SCHEMA_TYPE.get(field.__class__, 'string')}
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user