Использование строк запроса в django GET

У меня есть GET-запрос в django rest framework, который получает данные, используя kwargs.

class FetchUserByEmail(APIView):
    permission_classes = (permissions.AllowAny,)

    def get(self, request, **kwargs):
        try:
            email = kwargs.get('email')
            user = User.objects.get(email=email)
            return Response({"Success": UserSerializer(user).data}, status=status.HTTP_200_OK)
        except(KeyError, User.DoesNotExist) as e:
            return Response({"Failure": str(e)}, status=status.HTTP_404_NOT_FOUND)

Вот мой url

path(r'fetch/<str:email>', FetchUserByEmail.as_view(), name='fetch_user'),

Однако я хочу получить данные с помощью строки запроса,

Что-то вроде http://base/fetch?email=something

Как мне изменить мои урлы и представления, чтобы сделать это?

Вы можете сделать что-то вроде -

def get_queryset(self):
    cityId = self.request.GET.get('city')
    # this reads query param
    if cityId is None:
        queryset = branch.objects.all()
        # queryset = branch.objects.none()
    else:
        queryset = branch.objects.filter(city=cityId)
    return queryset

и ваш запрос может быть

http://base/?city=something
Вернуться на верх