default ordering for BO establishments search

This commit is contained in:
Kuroshini 2020-01-13 11:16:02 +03:00
parent dabc63647d
commit 2c888d1c3a
2 changed files with 28 additions and 7 deletions

View File

@ -313,6 +313,15 @@ class EstablishmentDocumentSerializer(InFavoritesMixin, DocumentSerializer):
) )
class EstablishmentBackOfficeDocumentSerializer(EstablishmentDocumentSerializer):
class Meta(EstablishmentDocumentSerializer.Meta):
document = EstablishmentDocumentSerializer.Meta.document
fields = EstablishmentDocumentSerializer.Meta.fields + (
'created',
)
class ProductDocumentSerializer(InFavoritesMixin): class ProductDocumentSerializer(InFavoritesMixin):
"""Product document serializer""" """Product document serializer"""

View File

@ -1,5 +1,5 @@
"""Search indexes app views.""" """Search indexes app views."""
from django_elasticsearch_dsl_drf import constants from django_elasticsearch_dsl_drf import constants, pagination
from django_elasticsearch_dsl_drf.filter_backends import ( from django_elasticsearch_dsl_drf.filter_backends import (
FilteringFilterBackend, FilteringFilterBackend,
GeoSpatialOrderingFilterBackend, GeoSpatialOrderingFilterBackend,
@ -321,14 +321,26 @@ class EstablishmentDocumentViewSet(BaseDocumentViewSet):
class EstablishmentBackOfficeViewSet(EstablishmentDocumentViewSet): class EstablishmentBackOfficeViewSet(EstablishmentDocumentViewSet):
filter_backends = EstablishmentDocumentViewSet.filter_backends + [ def get_queryset(self):
OrderingFilterBackend if not self.request.query_params.get('search'):
] self.request.GET._mutable = True
self.request.query_params.update({
'ordering': '-created',
})
self.request.GET._mutable = False
return super(EstablishmentBackOfficeViewSet, self).get_queryset()
serializer_class = serializers.EstablishmentBackOfficeDocumentSerializer
pagination_class = pagination.PageNumberPagination
filter_backends = [
FilteringFilterBackend,
filters.CustomSearchFilterBackend,
filters.CustomGeoSpatialFilteringFilterBackend,
GeoSpatialOrderingFilterBackend,
OrderingFilterBackend,
]
ordering_fields = { ordering_fields = {
'created': { 'created': 'created',
'field': 'created'
}
} }