diff --git a/rest_framework/routers.py b/rest_framework/routers.py index 2cf3338e9..4ee3686ea 100644 --- a/rest_framework/routers.py +++ b/rest_framework/routers.py @@ -280,6 +280,7 @@ class NestedSimpleRouter(SimpleRouter): self.parent_router = parent_router self.parent_prefix = parent_prefix self.nest_count = getattr(parent_router, 'nest_count', 0) +1 + self.nest_prefix = kwargs.pop('lookup', 'nested_%i' % self.nest_count) + '_' super(NestedSimpleRouter, self).__init__(*args, **kwargs) parent_registry = filter(lambda registered: registered[0] == self.parent_prefix, self.parent_router.registry) @@ -290,8 +291,7 @@ class NestedSimpleRouter(SimpleRouter): raise RuntimeError('parent registered resource not found') nested_routes = [] - nest_prefix = 'nested_%i' % self.nest_count - parent_lookup_regex = parent_router.get_lookup_regex(parent_viewset, nest_prefix) + parent_lookup_regex = parent_router.get_lookup_regex(parent_viewset, self.nest_prefix) for route in self.routes: route_contents = route.__dict__ parent_regex = '{parent_prefix}/{parent_lookup_regex}/'.format(parent_prefix=parent_prefix, parent_lookup_regex=parent_lookup_regex)