Automated generation of real Swagger/OpenAPI 2.0 schemas for JSON API Django Rest Framework endpoints.
Project description
drf-yasg-json-api - Swagger generator for JSON API
Automated generation of real Swagger/OpenAPI 2.0 schemas for JSON API Django Rest Framework endpoints.
Compatible with
-
Django REST Framework JSON API:
2.4-2.8, 3.0, 3.1
-
Drf-yasg:
1.4, 1.5, 1.6, 1.7.0, 1.7.1
-
Django REST Framework:
3.7, 3.8, 3.9, 3.10, 3.11
-
Django:
2.0, 2.1, 2.2, 3.0
-
Python:
3.5-3.8
Installation
pip install -U drf_yasg_json_api
Quickstart
Assuming you are using drf-yasg configuration like below (which is drf-yasg default):
SWAGGER_SETTINGS = {
'DEFAULT_AUTO_SCHEMA_CLASS': 'drf_yasg.inspectors.SwaggerAutoSchema',
'DEFAULT_FIELD_INSPECTORS': [
'drf_yasg.inspectors.CamelCaseJSONFilter',
'drf_yasg.inspectors.RecursiveFieldInspector',
'drf_yasg.inspectors.ReferencingSerializerInspector',
'drf_yasg.inspectors.ChoiceFieldInspector',
'drf_yasg.inspectors.FileFieldInspector',
'drf_yasg.inspectors.DictFieldInspector',
'drf_yasg.inspectors.JSONFieldInspector',
'drf_yasg.inspectors.HiddenFieldInspector',
'drf_yasg.inspectors.RelatedFieldInspector',
'drf_yasg.inspectors.SerializerMethodFieldInspector',
'drf_yasg.inspectors.SimpleFieldInspector',
'drf_yasg.inspectors.StringDefaultFieldInspector',
],
'DEFAULT_FILTER_INSPECTORS': [
'drf_yasg.inspectors.CoreAPICompatInspector',
],
}
Apply following changes:
SWAGGER_SETTINGS = {
'DEFAULT_AUTO_SCHEMA_CLASS': 'drf_yasg_json_api.view_inspectors.SwaggerJSONAPISchema', # Overridden
'DEFAULT_FIELD_INSPECTORS': [
'drf_yasg_json_api.inspectors.JSONAPIFormatFilter', # Replaces CamelCaseJSONFilter
'drf_yasg.inspectors.RecursiveFieldInspector',
'drf_yasg_json_api.inspectors.AttributesEnhancingFilter', # Added
'drf_yasg_json_api.inspectors.JSONAPISerializerInspector', # Replaces ReferencingSerializerInspector
'drf_yasg_json_api.inspectors.JSONAPIIDFieldInspector', # Added
'drf_yasg.inspectors.ChoiceFieldInspector',
'drf_yasg.inspectors.FileFieldInspector',
'drf_yasg.inspectors.DictFieldInspector',
'drf_yasg.inspectors.JSONFieldInspector',
'drf_yasg.inspectors.HiddenFieldInspector',
'drf_yasg_json_api.inspectors.JSONAPIM2MFieldInspector', # Added
'drf_yasg.inspectors.RelatedFieldInspector',
'drf_yasg.inspectors.SerializerMethodFieldInspector',
'drf_yasg.inspectors.SimpleFieldInspector',
'drf_yasg.inspectors.StringDefaultFieldInspector',
],
'DEFAULT_FILTER_INSPECTORS': [
'drf_yasg_json_api.inspectors.JSONAPIDjangoFilterInspector',
'drf_yasg.inspectors.CoreAPICompatInspector', # Added
],
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
drf-yasg-json-api-0.0.3.tar.gz
(13.5 kB
view hashes)
Built Distribution
Close
Hashes for drf_yasg_json_api-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d1465075345e91eef1b4762ac18f06f311004826634c0115c7862eaf433c3b14 |
|
MD5 | 8bc4378727034a1159ba888a085a619f |
|
BLAKE2b-256 | 3ed878665768313ea5530e9dc8f7247bd32916fda77723671392003ea895f78a |