Как включить определение JSON-схемы поля JSONField в схему OpenAPI, созданную drf-spectacular?
По умолчанию, при использовании drf-spectacular
для генерации схемы OpenAPI, JSONField будет типизирован как object
или array
. Однако у меня есть JSON-поле, которое проверяется по JSON-схеме, и я хотел бы, чтобы эта JSON-схема была включена в схему OpenAPI.
Я не смог найти этот конкретный сценарий, описанный в документации drf-spectacular
, но, тем не менее, я попытался изменить его с помощью @extend_schema
, но безуспешно.
Модель выглядит следующим образом:
Car(models.Model):
name = models.CharField()
data = models.JSONField("Car Data", validators=[JSONSchemaValidator(limit_value=my_schema)])
На сгенерированной схеме OpenAPI это представлено как:
data:
type: object
additionalProperties: {}
nullable: true
title: Car Data
Я не включаю пример того, как это должно выглядеть, потому что я ищу ответы, где это возможно каким-то заранее определенным способом.