0
私はdjango restフレームワークを使ってプロジェクトに取り組んでいます。私は、userによって与えられた異なるパラメータをフィルタリングする必要があります。私はdjangoフィルタバックエンドを使用しています。Djangoバックエンドフィルタを使用するフィルタ範囲は?
class FilterViewSet(viewsets.ModelViewSet):
serializer_class = SearchSerializer
#Filters on specific fields
filter_backends = (DjangoFilterBackend,)
filter_fields = ('property_zipcode','property_state',
'property_county',
'property_city','property_area',)#range between 100 to 500 or area less then 500.
#range is pass by user as a property_area=300.
def filter_queryset(self, queryset):
if self.request.query_params.get('property_state', None):
queryset = super(FilterViewSet, self).filter_queryset(self.get_queryset())
return queryset
else:
queryset = self.get_queryset()
return queryset
すべてが正常に動作している: はここに私のコードです。しかし、今私は100平方フィートから500平方フィートまでの範囲に基づいてproperty_areaをフィルタリングする必要があります。どのように私はdjangoFilterバックエンドを使用してこれを達成することができますか?
https://docs.djangoproject.com/en/1.11/ref/models/querysets/#range – geckos
私はここにすべてのジャンゴクエリセットのドキュメントを読んで、私はちょうどフィルターバックエンドを使用してdjango restフレームワークでそれを渡す方法を知りたい –
django-filterのマニュアルも読んでいますか? http://django-filter.readthedocs.io/en/master/ref/filters.html#numericrangefilter –