django-ninja
django-ninja copied to clipboard
How to use swagger and redoc together?
How to use swagger and redoc together?
Hi @rg3915
since v1 you can extend Docs class :
from ninja.openapi.docs import DocsBase, Swagger, Redoc
class MixedDocs(DocsBase):
def __init__(self) -> None:
super().__init__()
self.swagger = Swagger()
self.redoc = Redoc()
def render_page(self, request, api, **kwargs):
engine_name = kwargs.pop("engine")
engine = {
"swagger": self.swagger,
"redoc": self.redoc,
}.get(engine_name)
return engine.render_page(request, api, **kwargs)
api = NinjaAPI(docs_url='/docs/<engine>', docs=MixedDocs())
Thank you @vitalik