From b14062e7b9ab0a70465d09ee2c005d9f9ae3dd64 Mon Sep 17 00:00:00 2001 From: behruz-dev Date: Fri, 28 Nov 2025 16:47:00 +0500 Subject: [PATCH] region list uchun name boyicha search qoshildi --- core/apps/dashboard/views/region.py | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/core/apps/dashboard/views/region.py b/core/apps/dashboard/views/region.py index fab476f..3fdfd43 100644 --- a/core/apps/dashboard/views/region.py +++ b/core/apps/dashboard/views/region.py @@ -4,6 +4,10 @@ from django.shortcuts import get_object_or_404 # rest framework from rest_framework import generics, permissions, views +# drf yasg +from drf_yasg import openapi +from drf_yasg.utils import swagger_auto_schema + # shared from core.apps.shared.utils.response_mixin import ResponseMixin from core.apps.shared.serializers.region import RegionSerializer @@ -14,9 +18,24 @@ class RegionListApiView(generics.GenericAPIView, ResponseMixin): serializer_class = RegionSerializer queryset = Region.objects.all() + @swagger_auto_schema( + manual_parameters=[ + openapi.Parameter( + in_=openapi.IN_QUERY, + type=openapi.TYPE_STRING, + name='name', + description="name boyicha search", + required=False, + ) + ] + ) def get(self, request): try: - serializer = self.serializer_class(self.get_queryset(), many=True) + name = request.query_params.get('name') + query = self.queryset.all() + if name is not None: + query = self.queryset.filter(name__istartswith=name) + serializer = self.serializer_class(query, many=True) return self.success_response( data=serializer.data, message='malumotlar fetch qilindi' )