add district api view
This commit is contained in:
@@ -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)
|
||||
Reference in New Issue
Block a user