Как включить определение 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

Я не включаю пример того, как это должно выглядеть, потому что я ищу ответы, где это возможно каким-то заранее определенным способом.

Вернуться на верх