From d4c82b56b4871e553e7c8dd774606d73e2b48adf Mon Sep 17 00:00:00 2001 From: Gabor Date: Sat, 12 Dec 2020 23:47:15 +0200 Subject: [PATCH] Added support for queryset in DjangoModelPermission for functional views --- rest_framework/decorators.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/rest_framework/decorators.py b/rest_framework/decorators.py index 30b9d84d4..d04046894 100644 --- a/rest_framework/decorators.py +++ b/rest_framework/decorators.py @@ -69,6 +69,7 @@ def api_view(http_method_names=None): WrappedAPIView.permission_classes = getattr(func, 'permission_classes', APIView.permission_classes) + WrappedAPIView.queryset = getattr(func, 'queryset', APIView.permission_classes) WrappedAPIView.schema = getattr(func, 'schema', APIView.schema) @@ -106,9 +107,11 @@ def throttle_classes(throttle_classes): return decorator -def permission_classes(permission_classes): +def permission_classes(permission_classes, queryset=None): def decorator(func): func.permission_classes = permission_classes + if queryset is not None: + func.queryset = queryset return func return decorator