From 5f2d0a5a5d2d7ec6700c754a07973b1f92c8c207 Mon Sep 17 00:00:00 2001 From: Gaurav Dadhania Date: Mon, 8 Sep 2014 09:57:35 +0530 Subject: [PATCH 1/2] Make sure APIRoot.get can take on args, kwargs so router can be embedded within any URL pattern. --- rest_framework/routers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rest_framework/routers.py b/rest_framework/routers.py index ae56673d2..37c79d23b 100644 --- a/rest_framework/routers.py +++ b/rest_framework/routers.py @@ -284,7 +284,7 @@ class DefaultRouter(SimpleRouter): class APIRoot(views.APIView): _ignore_model_permissions = True - def get(self, request, format=None): + def get(self, request, format=None, *args, **kwargs): ret = {} for key, url_name in api_root_dict.items(): ret[key] = reverse(url_name, request=request, format=format) From 02595eacf23a77efe6eac0ae384456d7bb0ea397 Mon Sep 17 00:00:00 2001 From: Gaurav Dadhania Date: Tue, 9 Sep 2014 05:35:44 +0530 Subject: [PATCH 2/2] Fix APIRoot.get signature. --- rest_framework/routers.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rest_framework/routers.py b/rest_framework/routers.py index 37c79d23b..f28432d04 100644 --- a/rest_framework/routers.py +++ b/rest_framework/routers.py @@ -284,10 +284,10 @@ class DefaultRouter(SimpleRouter): class APIRoot(views.APIView): _ignore_model_permissions = True - def get(self, request, format=None, *args, **kwargs): + def get(self, request, *args, **kwargs): ret = {} for key, url_name in api_root_dict.items(): - ret[key] = reverse(url_name, request=request, format=format) + ret[key] = reverse(url_name, request=request, format=kwargs.get('format')) return Response(ret) return APIRoot.as_view()