diff options
| author | Tom Christie | 2013-08-19 08:24:27 +0100 |
|---|---|---|
| committer | Tom Christie | 2013-08-19 08:24:27 +0100 |
| commit | 89b0a539c389477cfd7df7df461868b85f618d95 (patch) | |
| tree | 3b37dd82a657d92a06a229175253dc88c6c8f7f9 /rest_framework/views.py | |
| parent | a8aabe23c94b1281ac8ca752a09555c1b0ef163d (diff) | |
| download | django-rest-framework-89b0a539c389477cfd7df7df461868b85f618d95.tar.bz2 | |
Move view name/description functions into public space
Diffstat (limited to 'rest_framework/views.py')
| -rw-r--r-- | rest_framework/views.py | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/rest_framework/views.py b/rest_framework/views.py index 4553714a..431e21f9 100644 --- a/rest_framework/views.py +++ b/rest_framework/views.py @@ -8,10 +8,29 @@ from django.http import Http404 from django.utils.datastructures import SortedDict from django.views.decorators.csrf import csrf_exempt from rest_framework import status, exceptions -from rest_framework.compat import View, HttpResponseBase +from rest_framework.compat import smart_text, HttpResponseBase, View from rest_framework.request import Request from rest_framework.response import Response from rest_framework.settings import api_settings +from rest_framework.utils import formatting + + +def get_view_name(instance, view, suffix=None): + name = view.__name__ + name = formatting.remove_trailing_string(name, 'View') + name = formatting.remove_trailing_string(name, 'ViewSet') + name = formatting.camelcase_to_spaces(name) + if suffix: + name += ' ' + suffix + + return name + +def get_view_description(instance, view, html=False): + description = view.__doc__ or '' + description = formatting.dedent(smart_text(description)) + if html: + return formatting.markup_description(description) + return description class APIView(View): |
