From def1372317f409d457fd0a69c0b3fa740a54159f Mon Sep 17 00:00:00 2001 From: dormantman Date: Mon, 16 Dec 2019 01:02:21 +0300 Subject: [PATCH] Change ordering format --- apps/collection/filters.py | 8 -------- apps/collection/views/back.py | 8 ++++++-- 2 files changed, 6 insertions(+), 10 deletions(-) delete mode 100644 apps/collection/filters.py diff --git a/apps/collection/filters.py b/apps/collection/filters.py deleted file mode 100644 index a97b47d1..00000000 --- a/apps/collection/filters.py +++ /dev/null @@ -1,8 +0,0 @@ -from rest_framework import filters - - -class CollectionBackOfficeOrderingFilter(filters.BaseFilterBackend): - """ Filter ordering """ - - def filter_queryset(self, request, queryset, view): - return queryset.order_by('rank', '-start') diff --git a/apps/collection/views/back.py b/apps/collection/views/back.py index f9b119aa..787570cc 100644 --- a/apps/collection/views/back.py +++ b/apps/collection/views/back.py @@ -1,8 +1,9 @@ +from django_filters.rest_framework import DjangoFilterBackend from rest_framework import mixins from rest_framework import permissions from rest_framework import viewsets +from rest_framework.filters import OrderingFilter -from collection import filters from collection import models from collection.serializers import back as serializers from utils.views import BindObjectMixin @@ -27,10 +28,13 @@ class CollectionBackOfficeViewSet(mixins.CreateModelMixin, permission_classes = (permissions.IsAuthenticated,) queryset = models.Collection.objects.all() - filter_backends = [filters.CollectionBackOfficeOrderingFilter] + filter_backends = [DjangoFilterBackend, OrderingFilter] serializer_class = serializers.CollectionBackOfficeSerializer bind_object_serializer_class = serializers.CollectionBindObjectSerializer + ordering_fields = ('rank', 'start') + ordering = ('-start', ) + def perform_binding(self, serializer): data = serializer.validated_data collection = data.pop('collection')