mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-08-02 19:40:13 +03:00
NestedSimpleRouter accepts 'lookup' parameter
This commit is contained in:
parent
2bec7e6d8c
commit
a7381d769a
|
@ -280,6 +280,7 @@ class NestedSimpleRouter(SimpleRouter):
|
||||||
self.parent_router = parent_router
|
self.parent_router = parent_router
|
||||||
self.parent_prefix = parent_prefix
|
self.parent_prefix = parent_prefix
|
||||||
self.nest_count = getattr(parent_router, 'nest_count', 0) +1
|
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)
|
super(NestedSimpleRouter, self).__init__(*args, **kwargs)
|
||||||
|
|
||||||
parent_registry = filter(lambda registered: registered[0] == self.parent_prefix, self.parent_router.registry)
|
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')
|
raise RuntimeError('parent registered resource not found')
|
||||||
|
|
||||||
nested_routes = []
|
nested_routes = []
|
||||||
nest_prefix = 'nested_%i' % self.nest_count
|
parent_lookup_regex = parent_router.get_lookup_regex(parent_viewset, self.nest_prefix)
|
||||||
parent_lookup_regex = parent_router.get_lookup_regex(parent_viewset, nest_prefix)
|
|
||||||
for route in self.routes:
|
for route in self.routes:
|
||||||
route_contents = route.__dict__
|
route_contents = route.__dict__
|
||||||
parent_regex = '{parent_prefix}/{parent_lookup_regex}/'.format(parent_prefix=parent_prefix, parent_lookup_regex=parent_lookup_regex)
|
parent_regex = '{parent_prefix}/{parent_lookup_regex}/'.format(parent_prefix=parent_prefix, parent_lookup_regex=parent_lookup_regex)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user