mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-06-07 23:23:18 +03:00
Settings now have default functions
Updated the setting to have a default function.
This commit is contained in:
parent
d07dae6e79
commit
a95984e4d4
|
@ -70,8 +70,8 @@ DEFAULTS = {
|
||||||
'PAGINATE_BY_PARAM': None,
|
'PAGINATE_BY_PARAM': None,
|
||||||
|
|
||||||
# View configuration
|
# View configuration
|
||||||
'VIEW_NAME_FUNCTION': None,
|
'VIEW_NAME_FUNCTION': 'rest_framework.utils.formatting.view_name',
|
||||||
'VIEW_DESCRIPTION_FUNCTION': None,
|
'VIEW_DESCRIPTION_FUNCTION': 'rest_framework.utils.formatting.view_description',
|
||||||
|
|
||||||
# Authentication
|
# Authentication
|
||||||
'UNAUTHENTICATED_USER': 'django.contrib.auth.models.AnonymousUser',
|
'UNAUTHENTICATED_USER': 'django.contrib.auth.models.AnonymousUser',
|
||||||
|
@ -129,6 +129,8 @@ IMPORT_STRINGS = (
|
||||||
'TEST_REQUEST_RENDERER_CLASSES',
|
'TEST_REQUEST_RENDERER_CLASSES',
|
||||||
'UNAUTHENTICATED_USER',
|
'UNAUTHENTICATED_USER',
|
||||||
'UNAUTHENTICATED_TOKEN',
|
'UNAUTHENTICATED_TOKEN',
|
||||||
|
'VIEW_NAME_FUNCTION',
|
||||||
|
'VIEW_DESCRIPTION_FUNCTION'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -49,39 +49,15 @@ def _camelcase_to_spaces(content):
|
||||||
def get_view_name(cls, suffix=None):
|
def get_view_name(cls, suffix=None):
|
||||||
"""
|
"""
|
||||||
Return a formatted name for an `APIView` class or `@api_view` function.
|
Return a formatted name for an `APIView` class or `@api_view` function.
|
||||||
If a VIEW_NAME_FUNCTION is set in settings the value of that will be used
|
|
||||||
if that value is "falsy" then the normal formatting will be used.
|
|
||||||
"""
|
"""
|
||||||
if api_settings.VIEW_NAME_FUNCTION:
|
return api_settings.VIEW_NAME_FUNCTION(cls, suffix)
|
||||||
name = api_settings.VIEW_NAME_FUNCTION(cls, suffix)
|
|
||||||
if name:
|
|
||||||
return name
|
|
||||||
|
|
||||||
name = cls.__name__
|
|
||||||
name = _remove_trailing_string(name, 'View')
|
|
||||||
name = _remove_trailing_string(name, 'ViewSet')
|
|
||||||
name = _camelcase_to_spaces(name)
|
|
||||||
if suffix:
|
|
||||||
name += ' ' + suffix
|
|
||||||
return name
|
|
||||||
|
|
||||||
|
|
||||||
def get_view_description(cls, html=False):
|
def get_view_description(cls, html=False):
|
||||||
"""
|
"""
|
||||||
Return a description for an `APIView` class or `@api_view` function.
|
Return a description for an `APIView` class or `@api_view` function.
|
||||||
If a VIEW_DESCRIPTION_FUNCTION is set in settings the value of that will be used
|
|
||||||
if that value is "falsy" then the normal formatting will be used.
|
|
||||||
"""
|
"""
|
||||||
if api_settings.VIEW_DESCRIPTION_FUNCTION:
|
return api_settings.VIEW_DESCRIPTION_FUNCTION(cls)
|
||||||
description = api_settings.VIEW_DESCRIPTION_FUNCTION(cls)
|
|
||||||
if description:
|
|
||||||
return markup_description(description)
|
|
||||||
|
|
||||||
description = cls.__doc__ or ''
|
|
||||||
description = _remove_leading_indent(smart_text(description))
|
|
||||||
if html:
|
|
||||||
return markup_description(description)
|
|
||||||
return description
|
|
||||||
|
|
||||||
|
|
||||||
def markup_description(description):
|
def markup_description(description):
|
||||||
|
@ -93,3 +69,21 @@ def markup_description(description):
|
||||||
else:
|
else:
|
||||||
description = escape(description).replace('\n', '<br />')
|
description = escape(description).replace('\n', '<br />')
|
||||||
return mark_safe(description)
|
return mark_safe(description)
|
||||||
|
|
||||||
|
|
||||||
|
def view_name(cls, suffix=None):
|
||||||
|
name = cls.__name__
|
||||||
|
name = _remove_trailing_string(name, 'View')
|
||||||
|
name = _remove_trailing_string(name, 'ViewSet')
|
||||||
|
name = _camelcase_to_spaces(name)
|
||||||
|
if suffix:
|
||||||
|
name += ' ' + suffix
|
||||||
|
|
||||||
|
return name
|
||||||
|
|
||||||
|
def view_description(cls, html=False):
|
||||||
|
description = cls.__doc__ or ''
|
||||||
|
description = _remove_leading_indent(smart_text(description))
|
||||||
|
if html:
|
||||||
|
return markup_description(description)
|
||||||
|
return description
|
Loading…
Reference in New Issue
Block a user