2016-08-25 11 views
1

リストを無効にすると、フィルタバックエンドが機能しません。リストの定義を上書きすると、フィルタを適用する方法は?リストをオーバーライドするときにフィルタバックエンドを追加する方法?

+0

この問題の解決策が見つかったのでしょうか。もしあなたがそれを分かち合うことができたら、感謝します。どうも! – Chris

+0

@Chris私は私の答えを以下に加えました。それがあなたを助けることを願っています。 – rechie

答えて

0

私はこの問題に直面しました。私の例では、ちょうどfilter_backends = (filters.DjangoFilterBackend, filters.OrderingFilter,)の部分を削除し、フィルタリングが機能し始めました。

2
class CircuitViewSet(viewsets.ModelViewSet): 
    queryset = Circuit.objects.all() 
    serializer_class = CircuitSerializer 
    filter_backends = (filters.DjangoFilterBackend, filters.OrderingFilter,) 
    filter_class = CircuitFilter 

    def list(self, request): 
     # with filter 
     queryset = self.filter_queryset(self.get_queryset()) 

     # pagination 
     page = self.paginate_queryset(queryset) 
     if page is not None: 
      serializer = self.get_serializer(page, many=True) 
      return self.get_paginated_response(serializer.data) 

     serializer = self.get_serializer(queryset, many=True) 
     return Response(serializer.data) 
+0

あなたは時間のトンを救った! –

関連する問題