get view for django 'virtual hosts' (#4776)

Brill, thanks! 👍
This commit is contained in:
Roman Vasilyev 2017-01-06 14:46:36 -08:00 committed by Tom Christie
parent a5fcf10c0e
commit 64e801e479
2 changed files with 14 additions and 2 deletions

View File

@ -145,6 +145,18 @@ May be used to pass a canonical URL for the schema.
url='https://www.example.org/api/'
)
#### `urlconf`
A string representing the import path to the URL conf that you want
to generate an API schema for. This defaults to the value of Django's
ROOT_URLCONF setting.
schema_view = get_schema_view(
title='Server Monitoring API',
url='https://www.example.org/api/',
urlconf='myproject.urls'
)
#### `renderer_classes`
May be used to pass the set of renderer classes that can be used to render the API root endpoint.

View File

@ -571,11 +571,11 @@ class SchemaGenerator(object):
return named_path_components + [action]
def get_schema_view(title=None, url=None, renderer_classes=None):
def get_schema_view(title=None, url=None, urlconf=None, renderer_classes=None):
"""
Return a schema view.
"""
generator = SchemaGenerator(title=title, url=url)
generator = SchemaGenerator(title=title, url=url, urlconf=urlconf)
if renderer_classes is None:
if renderers.BrowsableAPIRenderer in api_settings.DEFAULT_RENDERER_CLASSES:
rclasses = [renderers.CoreJSONRenderer, renderers.BrowsableAPIRenderer]