diff --git a/apps/search_indexes/documents/news.py b/apps/search_indexes/documents/news.py index 1fa2f9d9..3c87e680 100644 --- a/apps/search_indexes/documents/news.py +++ b/apps/search_indexes/documents/news.py @@ -42,13 +42,12 @@ class NewsDocument(Document): }, multi=True) favorites_for_users = fields.ListField(field=fields.IntegerField()) - + start = fields.DateField(attr='start') class Django: model = models.News fields = ( 'id', - 'start', 'end', 'slug', 'state', diff --git a/apps/search_indexes/serializers.py b/apps/search_indexes/serializers.py index 84782f0c..e5a249a7 100644 --- a/apps/search_indexes/serializers.py +++ b/apps/search_indexes/serializers.py @@ -206,6 +206,7 @@ class NewsDocumentSerializer(InFavoritesMixin, DocumentSerializer): 'preview_image_url', 'news_type', 'tags', + 'start', 'slug', ) diff --git a/apps/search_indexes/views.py b/apps/search_indexes/views.py index 7f262762..1f04a9a9 100644 --- a/apps/search_indexes/views.py +++ b/apps/search_indexes/views.py @@ -5,6 +5,7 @@ from django_elasticsearch_dsl_drf.filter_backends import ( FilteringFilterBackend, GeoSpatialFilteringFilterBackend, GeoSpatialOrderingFilterBackend, + OrderingFilterBackend, ) from elasticsearch_dsl import TermsFacet from django_elasticsearch_dsl_drf.viewsets import BaseDocumentViewSet @@ -27,9 +28,15 @@ class NewsDocumentViewSet(BaseDocumentViewSet): filters.CustomSearchFilterBackend, FilteringFilterBackend, filters.CustomFacetedSearchFilterBackend, - GeoSpatialOrderingFilterBackend, + OrderingFilterBackend ] + ordering_fields = { + 'start': { + 'field': 'start', + }, + } + faceted_search_fields = { 'tag': { 'field': 'tags.id',