Поле поиска Django Rest-Framework не работает внутри @action

Я пытаюсь использовать поле поиска, предлагаемое DRF, внутри действия, но, похоже, оно не работает. У меня была похожая проблема с пагинацией внутри экшена, но я нашел решение. Я предполагаю, что это переопределение ModelViewSet, поэтому я должен вручную добавить фильтрацию, но есть ли способ использовать те же поля поиска, которые предлагает DRF. Вот мой код:

class XViewSet(ModelViewSet):
    queryset = X.objects.all()
    serializer_class = XSerializer
    permission_classes = [IsAdminUser]
    filter_backends = (SearchFilter,OrderingFilter)
    search_fields = ['a','b','c','d']
    @action(detail=False, methods=['GET'], permission_classes=[IsAuthenticated])
    def me(self, request):
        query = X.objects.filter(ex_id=request.user.id)
        if request.method == 'GET':
            
            serializer = XSerializer(query, many=True)
            return Response(serializer.data)

Любая помощь приветствуется, спасибо :)

Я решил эту проблему, импортировав в начале параметр запроса, а затем отфильтровав набор запросов, вот обновленный код:

class XViewSet(ModelViewSet):
    queryset = X.objects.all()
    serializer_class = XSerializer
    permission_classes = [IsAdminUser]
    filter_backends = (SearchFilter,OrderingFilter)
    search_fields = ['a','b','c','d']
    @action(detail=False, methods=['GET'], permission_classes=[IsAuthenticated])
    def me(self, request):
        query = self.get_queryset()
        query = query.filter(ex_id=request.user.id)
        if request.method == 'GET':
            query = self.filter_queryset(query)
            serializer = XSerializer(query, many=True)
            return Response(serializer.data)

Возможно, есть лучший способ написать этот код, но я просто хотел поделиться им со всеми.

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