Fail gracefully if attempting to use schemas without coreapi being installed.

This commit is contained in:
Tom Christie 2016-06-09 14:07:17 +01:00
parent 47c776596c
commit 29e228d2dd
2 changed files with 4 additions and 1 deletions

View File

@ -792,6 +792,9 @@ class CoreJSONRenderer(BaseRenderer):
charset = None
format = 'corejson'
def __init__(self):
assert coreapi, 'Using CoreJSONRenderer, but `coreapi` is not installed.'
def render(self, data, media_type=None, renderer_context=None):
indent = bool(renderer_context.get('indent', 0))
codec = coreapi.codecs.CoreJSONCodec()

View File

@ -335,7 +335,7 @@ class DefaultRouter(SimpleRouter):
view_renderers = api_settings.DEFAULT_RENDERER_CLASSES
if self.schema_title:
assert coreapi is not None, '`coreapi` must be installed for schema support.'
assert coreapi, '`coreapi` must be installed for schema support.'
content = self.get_links()
schema = coreapi.Document(title=self.schema_title, content=content)
view_renderers += [renderers.CoreJSONRenderer]