Inject a swagger style yaml data to the django-rest-swagger's data
Project description
Django REST Swagger 2.0 has changed drastically. For example, you may not put a return code in YAML files. This package provides functions to inject a swagger style yaml data to the django-rest-swagger’s data.
How to use it
Add rest_framework_swagger to your INSTALLED_APPS setting
settings.py:
INSTALLED_APPS = ( ... 'rest_framework_swagger', )
You create a swagger style yaml file.
This YAML file is swagger style.
./api_test_doc.yml:
get: description: test document responses: 200: description: success 400: description: bad request schema: type: json headers: Content-Type: application/json
You create api view function or ViewClass.
The swaggerdoc decorator to specify the relative path from the file the view callable is defined.
views.py:
from rest_framework.decorators import api_view from rest_framework.views import APIView from django_rest_swagger_swaggerdoc import swaggerdoc @swaggerdoc('api_test_doc.yml') @api_view() def example_view(request): pass class ExampleView(APIView): @swaggerdoc('./api_test_doc.yml') def get(self, request): pass
You create document schema view.
Use django_rest_swagger_swaggerdoc.renderers.SwaggerAdditinalDocRenderer. DO NOT USE rest_framework_swagger.renderers.OpenAPIRenderer.
views.py:
from rest_framework_swagger.renderers import SwaggerUIRenderer from rest_framework.decorators import api_view, renderer_classes from rest_framework import response, schemas from django_rest_swagger_swaggerdoc.renderers import SwaggerAdditinalDocRenderer @api_view() @renderer_classes([SwaggerUIRenderer, SwaggerAdditinalDocRenderer]) def schema_view(request): generator = schemas.SchemaGenerator(title='Pastebin API') return response.Response(generator.get_schema(request=request))
See example project: https://github.com/TakesxiSximada/django-rest-swagger-swaggerdoc/tree/master/examples
Install
$ pip install django-rest-swagger-swaggerdoc
It is depends on djangorestframework(>= 3.4.7). If older than version 3.7.4, it may not be able to correctly resolve the YAML path.
Other
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file django-rest-swagger-swaggerdoc-1.0.post3.tar.gz
.
File metadata
- Download URL: django-rest-swagger-swaggerdoc-1.0.post3.tar.gz
- Upload date:
- Size: 7.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3c733fcbc26c30a435c02003211a9b901368d127eae5bb7c8527bffe79d7ac2 |
|
MD5 | d234804d94ed1f67132028cb62a0ebd1 |
|
BLAKE2b-256 | c4cfbacf236630bb72470ab6c4b8bf435e128ae21ab2ee62ad27b655e13af593 |
File details
Details for the file django_rest_swagger_swaggerdoc-1.0.post3-py3-none-any.whl
.
File metadata
- Download URL: django_rest_swagger_swaggerdoc-1.0.post3-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | fddcd76894ba1352433e092bfa6db51841cf0787968d09626c6d317a8433cb84 |
|
MD5 | f69e1ca1bfa881fa136890633e5311d0 |
|
BLAKE2b-256 | da9aafac92b3c68561e5c815f6895e00b7b5b76ac0d10e06f478a648f04cccdf |