From d34978de9e3307c73d75a77b70c040171d2fe93f Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Tue, 8 Oct 2013 17:42:42 +0200 Subject: [PATCH 1/2] The default get_view_name method should attempt to get the view's name from the view's instance. --- rest_framework/views.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/rest_framework/views.py b/rest_framework/views.py index 853e64614..b110544c8 100644 --- a/rest_framework/views.py +++ b/rest_framework/views.py @@ -22,7 +22,11 @@ def get_view_name(view_cls, suffix=None): This function is the default for the `VIEW_NAME_FUNCTION` setting. """ - name = view_cls.__name__ + try: + view = view_cls() + name = view.get_view_name() + else: + name = view_cls.__name__ name = formatting.remove_trailing_string(name, 'View') name = formatting.remove_trailing_string(name, 'ViewSet') name = formatting.camelcase_to_spaces(name) From 7db308a8237f726322ddd15385e4151455670d9e Mon Sep 17 00:00:00 2001 From: Omer Katz Date: Tue, 8 Oct 2013 17:51:23 +0200 Subject: [PATCH 2/2] Wrong syntax. It should be try...except. --- rest_framework/views.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rest_framework/views.py b/rest_framework/views.py index b110544c8..e6f6742fe 100644 --- a/rest_framework/views.py +++ b/rest_framework/views.py @@ -25,7 +25,7 @@ def get_view_name(view_cls, suffix=None): try: view = view_cls() name = view.get_view_name() - else: + except: name = view_cls.__name__ name = formatting.remove_trailing_string(name, 'View') name = formatting.remove_trailing_string(name, 'ViewSet')