Enhance DeviceListCreateAPIView to allow admin users to access all devices based on query parameter

This commit is contained in:
2025-06-28 10:25:46 +05:00
parent 2de9e2117d
commit 7d641e95d7
+7 -3
View File
@@ -30,10 +30,14 @@ class DeviceListCreateAPIView(
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
queryset = self.filter_queryset(self.get_queryset()) queryset = self.filter_queryset(self.get_queryset())
all_devices = request.query_params.get("all_devices", None)
if request.user.is_authenticated and not getattr( if (
request.user, "is_admin", False request.user.is_authenticated
and getattr(request.user, "is_admin", False)
and all_devices
): ):
pass
else:
queryset = queryset.filter(user=request.user) queryset = queryset.filter(user=request.user)
page = self.paginate_queryset(queryset) page = self.paginate_queryset(queryset)