Skip to content

Commit

Permalink
refactor sort_results with generate_dsl, re #11477
Browse files Browse the repository at this point in the history
  • Loading branch information
whatisgalen committed Sep 20, 2024
1 parent f265c72 commit bf9b8e1
Showing 1 changed file with 20 additions and 11 deletions.
31 changes: 20 additions & 11 deletions arches/app/search/components/sort_results.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,26 @@


class SortResults(BaseSearchFilter):
def append_dsl(self, search_query_object, **kwargs):
sort_param = self.request.GET.get(self.componentname, None)

if sort_param is not None and sort_param != "":
search_query_object["query"].sort(
field="displayname.value",
dsl={
"order": sort_param,
"nested": {
"path": "displayname",
"filter": {"term": {"displayname.language": get_language()}},
},
def generate_dsl(self, search_query_object, **kwargs):
sort_param = self.request.GET.get(self.componentname, "")
field = None
dsl = None
if sort_param != "":
field = "displayname.value"
dsl = {
"order": sort_param,
"nested": {
"path": "displayname",
"filter": {"term": {"displayname.language": get_language()}},
},
}
return field, dsl

def append_dsl(self, search_query_object, **kwargs):
sort_field, sort_dsl = self.generate_dsl(search_query_object, **kwargs)
if sort_field and sort_dsl:
search_query_object["query"].sort(
field=sort_field,
dsl=sort_dsl,
)

0 comments on commit bf9b8e1

Please sign in to comment.