From 3ed8554e3fa11fd3a330da80f60f678c1164e067 Mon Sep 17 00:00:00 2001 From: ahzam Date: Wed, 28 Sep 2022 19:25:49 +0500 Subject: [PATCH] Revert "replace try/except with context managger" This reverts commit b95b6f0cbb9599b162d53921db91481bf713e05a. --- rest_framework/viewsets.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/rest_framework/viewsets.py b/rest_framework/viewsets.py index f7560067e..1c56f61e8 100644 --- a/rest_framework/viewsets.py +++ b/rest_framework/viewsets.py @@ -16,8 +16,6 @@ automatically. router.register(r'users', UserViewSet, 'user') urlpatterns = router.urls """ - -import contextlib from collections import OrderedDict from functools import update_wrapper from inspect import getmembers @@ -198,7 +196,7 @@ class ViewSetMixin: ] for action in actions: - with contextlib.suppress(NoReverseMatch): + try: url_name = '%s-%s' % (self.basename, action.url_name) namespace = self.request.resolver_match.namespace if namespace: @@ -207,6 +205,9 @@ class ViewSetMixin: url = reverse(url_name, self.args, self.kwargs, request=self.request) view = self.__class__(**action.kwargs) action_urls[view.get_view_name()] = url + except NoReverseMatch: + pass # URL requires additional arguments, ignore + return action_urls