Skip to content

CoreAPI to Swagger converter + Django REST Framework Implementation (demo)

Notifications You must be signed in to change notification settings

marcgibbons/core-api-swagger

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CoreAPI Swagger

Build Status codecov

Use with CoreAPI

import coreapi
from coreapi_swagger.codecs import OpenAPICodec

schema_document = coreapi.Document(title='My Schema', url='http://coreapi.org') 
coreapi.dump(schema_document, encoders=[OpenAPICodec()])

Django REST Framework

This package ships with two renderer classes:

  1. OpenAPIRenderer generates the OpenAPI (fka Swagger) JSON schema specification. This renderer will be presented if:
  • Content-Type: application/openapi+json is specified in the headers.
  • ?format=openapi is passed as query param
  1. SwaggerUIRenderer generates the Swagger UI and requires the OpenAPIRenderer

Example: DRF Schema View

from coreapi_swagger.contrib.django.renderers import OpenAPIRenderer, SwaggerUIRenderer
from rest_framework.decorators import api_view, renderer_classes
from rest_framework import response, schemas

@api_view()
@renderer_classes([SwaggerUIRenderer, OpenAPIRenderer])
def schema_view(request):
    generator = schemas.SchemaGenerator(title='Pastebin API')
    return response.Response(generator.get_schema(request=request))

About

CoreAPI to Swagger converter + Django REST Framework Implementation (demo)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages