Skip to content

Commit 60deec2

Browse files
committed
use attrgetter
1 parent d526249 commit 60deec2

File tree

3 files changed

+4
-7
lines changed

3 files changed

+4
-7
lines changed

readthedocs/search/api.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import itertools
22
import logging
3+
from operator import attrgetter
34
from pprint import pformat
45

56
from rest_framework import generics, serializers
@@ -54,7 +55,7 @@ def get_inner_hits(self, obj):
5455
'_source': hit._source.to_dict(),
5556
'highlight': self._get_inner_hits_highlights(hit),
5657
}
57-
for hit in sorted(all_results, key=utils._get_hit_score, reverse=True)
58+
for hit in sorted(all_results, key=attrgetter('_score'), reverse=True)
5859
]
5960

6061
return sorted_results

readthedocs/search/utils.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -161,11 +161,6 @@ def _indexing_helper(html_objs_qs, wipe=False):
161161
delete_objects_in_es.delay(**kwargs)
162162

163163

164-
def _get_hit_score(res):
165-
"""Returns the _score of a single ES search result hits."""
166-
return res._score
167-
168-
169164
def _remove_newlines_from_dict(highlight):
170165
"""
171166
Recursively change results to turn newlines into periods.

readthedocs/search/views.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import collections
33
import itertools
44
import logging
5+
from operator import attrgetter
56
from pprint import pformat
67

78
from django.shortcuts import get_object_or_404, render
@@ -129,7 +130,7 @@ def elastic_search(request, project_slug=None):
129130
hit.highlight.to_dict()
130131
),
131132
}
132-
for hit in sorted(all_results, key=utils._get_hit_score, reverse=True)
133+
for hit in sorted(all_results, key=attrgetter('_score'), reverse=True)
133134
)
134135

135136
result.meta.inner_hits = sorted_results

0 commit comments

Comments
 (0)