--- a/src/notes/api/views/core.py Fri Jul 28 18:22:46 2017 +0200
+++ b/src/notes/api/views/core.py Tue Jul 25 19:11:26 2017 +0200
@@ -5,15 +5,16 @@
import logging
from django.utils import timezone
+from django_filters.rest_framework import DjangoFilterBackend
from notes.models import Note, Session
from rest_framework import viewsets
+from ..filters import NoteFilterSet, SessionFilterSet
from ..permissions import NotePermission, SessionPermission
from ..serializers.core import (CreateNoteSerializer, CreateSessionSerializer,
DetailNoteSerializer, DetailSessionSerializer,
ListNoteSerializer, ListSessionSerializer,
- RootDetailNoteSerializer,
- RootListNoteSerializer, UpdateNoteSerializer)
+ RootDetailNoteSerializer, UpdateNoteSerializer)
logger = logging.getLogger(__name__)
@@ -33,6 +34,9 @@
permission_classes = (SessionPermission,)
+ filter_backends = (DjangoFilterBackend,)
+ filter_class = SessionFilterSet
+
def get_serializer_class(self):
return self.serializers.get(self.action, ListSessionSerializer)
@@ -77,6 +81,9 @@
permission_classes = (NotePermission,)
serializer_class = RootDetailNoteSerializer
+ filter_backends = (DjangoFilterBackend,)
+ filter_class = NoteFilterSet
+
def get_queryset(self):
queryset = Note.objects.filter(session__owner=self.request.user).order_by('created')
modified_since_str = self.request.query_params.get('modified_since', None)