diff --git a/rest_framework/permissions.py b/rest_framework/permissions.py index 5d75f54ba..56ed5af5d 100644 --- a/rest_framework/permissions.py +++ b/rest_framework/permissions.py @@ -81,8 +81,9 @@ class OR: def has_object_permission(self, request, view, obj): return ( - self.op1.has_object_permission(request, view, obj) or - self.op2.has_object_permission(request, view, obj) + (self.op1.has_permission(request, view) and self.op1.has_object_permission(request, view, obj)) + or + (self.op2.has_permission(request, view) and self.op2.has_object_permission(request, view, obj)) )