diff options
| author | Tom Christie | 2013-01-21 17:42:33 +0000 | 
|---|---|---|
| committer | Tom Christie | 2013-01-21 17:42:39 +0000 | 
| commit | 98bffa68e655e530c16e4622658541940b3891f0 (patch) | |
| tree | 6d28ba3c8dcaba608bf411e0acc2a06887196aa8 /rest_framework/urlpatterns.py | |
| parent | 2c76212e5454efa4d4d02c7051055c7957497d52 (diff) | |
| download | django-rest-framework-98bffa68e655e530c16e4622658541940b3891f0.tar.bz2 | |
Don't do an inverted if test.
Diffstat (limited to 'rest_framework/urlpatterns.py')
| -rw-r--r-- | rest_framework/urlpatterns.py | 27 | 
1 files changed, 14 insertions, 13 deletions
| diff --git a/rest_framework/urlpatterns.py b/rest_framework/urlpatterns.py index 0f210e66..47789026 100644 --- a/rest_framework/urlpatterns.py +++ b/rest_framework/urlpatterns.py @@ -6,28 +6,29 @@ from django.core.urlresolvers import RegexURLResolver  def apply_suffix_patterns(urlpatterns, suffix_pattern, suffix_required):      ret = []      for urlpattern in urlpatterns: -        if not isinstance(urlpattern, RegexURLResolver): -            # Regular URL pattern - -            # Form our complementing '.format' urlpattern -            regex = urlpattern.regex.pattern.rstrip('$') + suffix_pattern -            view = urlpattern._callback or urlpattern._callback_str -            kwargs = urlpattern.default_args -            name = urlpattern.name -            # Add in both the existing and the new urlpattern -            if not suffix_required: -                ret.append(urlpattern) -            ret.append(url(regex, view, kwargs, name)) -        else: +        if isinstance(urlpattern, RegexURLResolver):              # Set of included URL patterns              regex = urlpattern.regex.pattern              namespace = urlpattern.namespace              app_name = urlpattern.app_name              kwargs = urlpattern.default_kwargs +            # Add in the included patterns, after applying the suffixes              patterns = apply_suffix_patterns(urlpattern.url_patterns,                                               suffix_pattern,                                               suffix_required)              ret.append(url(regex, include(patterns, namespace, app_name), kwargs)) + +        else: +            # Regular URL pattern +            regex = urlpattern.regex.pattern.rstrip('$') + suffix_pattern +            view = urlpattern._callback or urlpattern._callback_str +            kwargs = urlpattern.default_args +            name = urlpattern.name +            # Add in both the existing and the new urlpattern +            if not suffix_required: +                ret.append(urlpattern) +            ret.append(url(regex, view, kwargs, name)) +      return ret | 
