aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/routers.py
diff options
context:
space:
mode:
authorXavier Ordoquy2015-03-13 07:49:14 +0100
committerXavier Ordoquy2015-03-13 07:49:14 +0100
commitcc64e30f55b04469f0eb93d0c1a7a687e9bb8c82 (patch)
treeacf473ed37fce19c8f62b4d365d0b67d564d49f8 /rest_framework/routers.py
parenta02098b855aad0847cddacc4bed2d280017b46c5 (diff)
parent8d0dbc8092a754e1f0f7d80d93506072556f35a2 (diff)
downloaddjango-rest-framework-cc64e30f55b04469f0eb93d0c1a7a687e9bb8c82.tar.bz2
Merge pull request #2685 from rbarrois/rbarrois/fix_lookup_url_kwarg
Fix lookup_url_kwarg handling in viewsets (Fixes #2591).
Diffstat (limited to 'rest_framework/routers.py')
-rw-r--r--rest_framework/routers.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/rest_framework/routers.py b/rest_framework/routers.py
index b1e39ff7..4df852bf 100644
--- a/rest_framework/routers.py
+++ b/rest_framework/routers.py
@@ -218,14 +218,15 @@ class SimpleRouter(BaseRouter):
https://github.com/alanjds/drf-nested-routers
"""
- base_regex = '(?P<{lookup_prefix}{lookup_field}>{lookup_value})'
+ base_regex = '(?P<{lookup_prefix}{lookup_url_kwarg}>{lookup_value})'
# Use `pk` as default field, unset set. Default regex should not
# consume `.json` style suffixes and should break at '/' boundaries.
lookup_field = getattr(viewset, 'lookup_field', 'pk')
+ lookup_url_kwarg = getattr(viewset, 'lookup_url_kwarg', None) or lookup_field
lookup_value = getattr(viewset, 'lookup_value_regex', '[^/.]+')
return base_regex.format(
lookup_prefix=lookup_prefix,
- lookup_field=lookup_field,
+ lookup_url_kwarg=lookup_url_kwarg,
lookup_value=lookup_value
)