From b8325ee576a6f47f0db4b888e799ee6b7af6b227 Mon Sep 17 00:00:00 2001 From: Dominik Kozaczko Date: Tue, 16 Jul 2013 20:10:24 +0200 Subject: [PATCH] SimpleDjangoFilter allows straightforward ORM filtering --- rest_framework/filters.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/rest_framework/filters.py b/rest_framework/filters.py index c058bc715..201aefd7e 100644 --- a/rest_framework/filters.py +++ b/rest_framework/filters.py @@ -23,6 +23,17 @@ class BaseFilterBackend(object): raise NotImplementedError(".filter_queryset() must be overridden.") +class SimpleDjangoFilterBackend(BaseFilterBackend): + """ + Really simple class that allows straightforward Django ORM filtering. + """ + def filter_queryset(self, request, queryset, view): + params = {} + for k, v in request.QUERY_PARAMS.iteritems(): + params.update({k:v[0]}) + return queryset.filter(**params) + + class DjangoFilterBackend(BaseFilterBackend): """ A filter backend that uses django-filter.