Commit beea6487 by Tom Christie

Function based views get proper naming in browseable API

parent 65f59286
...@@ -21,6 +21,8 @@ def api_view(http_method_names): ...@@ -21,6 +21,8 @@ def api_view(http_method_names):
for method in http_method_names: for method in http_method_names:
setattr(WrappedAPIView, method.lower(), handler) setattr(WrappedAPIView, method.lower(), handler)
WrappedAPIView.__name__ = func.__name__
WrappedAPIView.renderer_classes = getattr(func, 'renderer_classes', WrappedAPIView.renderer_classes = getattr(func, 'renderer_classes',
APIView.renderer_classes) APIView.renderer_classes)
......
...@@ -50,7 +50,8 @@ def _camelcase_to_spaces(content): ...@@ -50,7 +50,8 @@ def _camelcase_to_spaces(content):
Used when generating names from view classes. Used when generating names from view classes.
""" """
camelcase_boundry = '(((?<=[a-z])[A-Z])|([A-Z](?![A-Z]|$)))' camelcase_boundry = '(((?<=[a-z])[A-Z])|([A-Z](?![A-Z]|$)))'
return re.sub(camelcase_boundry, ' \\1', content).strip() content = re.sub(camelcase_boundry, ' \\1', content).strip()
return ' '.join(content.split('_')).title()
class APIView(View): class APIView(View):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment