add district api view

This commit is contained in:
behruz-dev
2025-08-07 15:17:29 +05:00
parent ff493dc03d
commit 2999d4bdab
3 changed files with 24 additions and 9 deletions

View File

@@ -1,13 +1,28 @@
from rest_framework import generics
from django.shortcuts import get_object_or_404
from core.apps.shared.serializers.region import RegionListSerializer
from core.apps.shared.models import Region
from rest_framework import generics, views
from rest_framework.response import Response
from core.apps.shared.serializers.region import RegionListSerializer, DistrictListSerializer
from core.apps.shared.models import Region, District
from core.apps.accounts.permissions.permissions import HasRolePermission
class RegionListApiView(generics.ListAPIView):
permission_classes = [HasRolePermission]
queryset = Region.objects.prefetch_related('districts')
queryset = Region.objects.all()
serializer_class = RegionListSerializer
required_permissions = ['project', 'project_folder']
required_permissions = ['project', 'project_folder']
pagination_class = None
class DistrictListApiView(views.APIView):
permission_classes = [HasRolePermission]
required_permissions = ['project', 'project_folder']
def get(self, request, id):
region = get_object_or_404(Region, id=id)
districts = District.objects.filter(region=region)
serializer = DistrictListSerializer(districts, many=True)
return Response(serializer.data, status=200)