# HG changeset patch # User Thierry Florac # Date 1537345866 -7200 # Node ID a4c07965e2560904f967488d2e8ac1c4755cabfb # Parent 090b77e9f7c4adf7f69402185b15e9e109d295e5 Updated view query sort arguments diff -r 090b77e9f7c4 -r a4c07965e256 src/pyams_content_es/shared/view/__init__.py --- a/src/pyams_content_es/shared/view/__init__.py Tue Sep 18 16:29:50 2018 +0200 +++ b/src/pyams_content_es/shared/view/__init__.py Wed Sep 19 10:31:06 2018 +0200 @@ -12,24 +12,20 @@ __docformat__ = 'restructuredtext' - -# import standard library from datetime import datetime -# import interfaces +from elasticsearch_dsl import Search, Q +from pyramid.threadlocal import get_current_registry +from pyramid_es import get_client + +from pyams_catalog.query import CatalogResultSet from pyams_content.shared.view.interfaces import IWfView, IViewQuery, IViewQueryEsParamsExtension, \ IViewQueryFilterExtension -from pyams_workflow.interfaces import IWorkflow - -# import packages -from elasticsearch_dsl import Search, Q -from pyams_catalog.query import CatalogResultSet from pyams_utils.adapter import adapter_config, ContextAdapter from pyams_utils.list import unique_iter from pyams_utils.request import check_request from pyams_utils.timezone import tztime -from pyramid.threadlocal import get_current_registry -from pyramid_es import get_client +from pyams_workflow.interfaces import IWorkflow @adapter_config(name='es', context=IWfView, provides=IViewQuery) @@ -72,8 +68,12 @@ params = self.get_es_params(context) search = Search(using=client.es, index=client.index) \ .query(params) \ - .sort('{0}workflow.{1}'.format('-' if reverse else '', - sort_index)) \ + .sort({ + 'workflow.{0}'.format(sort_index): { + 'order': 'desc' if reverse else 'asc', + 'unmapped_type': 'date' + } + }) \ .source(['internal_id']) if limit: search = search[:limit]