Django restframework фильтрация с помощью нескольких запросов

У меня есть такой набор представлений с django-restframework

class MixViewSet(viewsets.ModelViewSet):
   
    serializer_class = MixSerializer
    filter_backends = [django_filters.rest_framework.DjangoFilterBackend]
    filter_fields = ["id","user"]

    def list(self,request,*args,**kwargs):
        #filterset = FilterBook(request.query_params, queryset=Mix.objects.all())
        queryset = self.filter_queryset(self.get_queryset())
        #print(request.GET['access_token'])
        if ('at' in request.GET):
            try:
                user = AccessToken.objects.get(token=request.GET['at']).user
            except:
                print("access token invalid")
                return Response({'message':'invalid access token'})
            print(user.id)
            queryset = queryset.filter(user=user)
        #http://localhost:8008/api/mixs/?access_token=128
        
        serializer = self.get_serializer(queryset, many=True)
        custom_data = {
            'items': serializer.data
        }
        custom_data.update({
            'meta':{"api":"Mix"}
        })
        return Response(custom_data)

def get_queryset(self):
    queryset = Mix.objects.all()
    ids = self.request.query_params.get('id')
    print(ids)
    if ids is not None:
        queryset = queryset.filter(id=ids)
    return queryset

class MixSerializer(serializers.ModelSerializer):
    pub_date = serializers.DateTimeField(format="%m/%d/%Y,%I:%M:%S %p")
    class Meta:
        model = Mix
        fields = ('id','pub_date','detail','user') 

Теперь я хочу получить элементы по нескольким идентификаторам, например

https://example.com/mix/?id=100&id=112&id=143

однако в данном случае работает только 143 и возвращает одну строку.

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

Вернуться на верх