From 17ae42a0b88d133aee19669883adcfb6bfa9b850 Mon Sep 17 00:00:00 2001 From: Egor fureunoir Gorbunov Date: Sat, 7 Jun 2025 19:20:51 +0300 Subject: [PATCH] Fixes: OrderViewSet fixes --- core/viewsets.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/core/viewsets.py b/core/viewsets.py index e43cd228..d8ad7745 100644 --- a/core/viewsets.py +++ b/core/viewsets.py @@ -1,3 +1,4 @@ +import uuid from uuid import UUID from django.db.models import Q @@ -272,10 +273,18 @@ class OrderViewSet(EvibesViewSet): return qs.filter(user=user) def get_object(self): - lookup_val = self.kwargs.get(self.lookup_field) + lookup_val = self.kwargs[self.lookup_field] + qs = self.get_queryset() + + try: + uuid.UUID(lookup_val) + uuid_q = Q(uuid=lookup_val) + except ValueError: + uuid_q = Q() + obj = get_object_or_404( - self.get_queryset(), - Q(uuid=lookup_val) | Q(human_readable_id=lookup_val) + qs, + uuid_q | Q(human_readable_id=lookup_val) ) self.check_object_permissions(self.request, obj) return obj