Skip to content

Commit 87dc7d2

Browse files
Fuzzy search example
1 parent 4fe2c19 commit 87dc7d2

File tree

4 files changed

+54
-35
lines changed

4 files changed

+54
-35
lines changed

examples/simple/search_indexes/urls.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,29 +3,30 @@
33
from .viewsets import (
44
AddressDocumentViewSet,
55
AuthorDocumentViewSet,
6+
BookCompoundFuzzySearchBackendDocumentViewSet,
67
BookCompoundSearchBackendDocumentViewSet,
78
BookCompoundSearchBoostSearchBackendDocumentViewSet,
9+
BookCustomDocumentViewSet,
810
BookDefaultFilterLookupDocumentViewSet,
911
BookDocumentViewSet,
1012
BookFrontendDocumentViewSet,
11-
BookCustomDocumentViewSet,
1213
BookFunctionalSuggesterDocumentViewSet,
1314
BookIgnoreIndexErrorsDocumentViewSet,
1415
BookMoreLikeThisDocumentViewSet,
1516
BookMoreLikeThisNoOptionsDocumentViewSet,
1617
BookMultiMatchOptionsPhasePrefixSearchFilterBackendDocumentViewSet,
1718
BookMultiMatchSearchFilterBackendDocumentViewSet,
18-
BookPermissionsDocumentViewSet,
1919
BookOrderingByScoreCompoundSearchBackendDocumentViewSet,
2020
BookOrderingByScoreDocumentViewSet,
21+
BookPermissionsDocumentViewSet,
2122
BookSimpleQueryStringBoostSearchFilterBackendDocumentViewSet,
2223
BookSimpleQueryStringSearchFilterBackendDocumentViewSet,
2324
BookSourceSearchBackendDocumentViewSet,
2425
CityCompoundSearchBackendDocumentViewSet,
2526
CityDocumentViewSet,
27+
FrontAddressDocumentViewSet,
2628
LocationDocumentViewSet,
2729
PublisherDocumentViewSet,
28-
FrontAddressDocumentViewSet,
2930
TagDocumentViewSet,
3031
)
3132

@@ -126,6 +127,12 @@
126127
basename='bookdocument_compound_search_backend'
127128
)
128129

130+
router.register(
131+
r'books-compound-fuzzy-search-backend',
132+
BookCompoundFuzzySearchBackendDocumentViewSet,
133+
basename='bookdocument_compound_fuzzy_search_backend'
134+
)
135+
129136
router.register(
130137
r'books-compound-search-boost-backend',
131138
BookCompoundSearchBoostSearchBackendDocumentViewSet,

examples/simple/search_indexes/viewsets/__init__.py

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
from .address import AddressDocumentViewSet, FrontAddressDocumentViewSet
22
from .author import AuthorDocumentViewSet
33
from .book import (
4+
BookCompoundFuzzySearchBackendDocumentViewSet,
45
BookCompoundSearchBackendDocumentViewSet,
56
BookCompoundSearchBoostSearchBackendDocumentViewSet,
7+
BookCustomDocumentViewSet,
68
BookDefaultFilterLookupDocumentViewSet,
79
BookDocumentViewSet,
8-
BookCustomDocumentViewSet,
910
BookFrontendDocumentViewSet,
1011
BookFunctionalSuggesterDocumentViewSet,
1112
BookIgnoreIndexErrorsDocumentViewSet,
@@ -28,11 +29,12 @@
2829
__all__ = (
2930
'AddressDocumentViewSet',
3031
'AuthorDocumentViewSet',
32+
'BookCompoundFuzzySearchBackendDocumentViewSet',
3133
'BookCompoundSearchBackendDocumentViewSet',
3234
'BookCompoundSearchBoostSearchBackendDocumentViewSet',
35+
'BookCustomDocumentViewSet',
3336
'BookDefaultFilterLookupDocumentViewSet',
3437
'BookDocumentViewSet',
35-
'BookCustomDocumentViewSet',
3638
'BookFrontendDocumentViewSet',
3739
'BookFunctionalSuggesterDocumentViewSet',
3840
'BookIgnoreIndexErrorsDocumentViewSet',
@@ -48,8 +50,8 @@
4850
'BookSourceSearchBackendDocumentViewSet',
4951
'CityCompoundSearchBackendDocumentViewSet',
5052
'CityDocumentViewSet',
53+
'FrontAddressDocumentViewSet',
5154
'LocationDocumentViewSet',
5255
'PublisherDocumentViewSet',
53-
'FrontAddressDocumentViewSet',
5456
'TagDocumentViewSet',
5557
)
Lines changed: 16 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,17 @@
11
from .base import *
2-
from .compound_search import BookCompoundSearchBackendDocumentViewSet
3-
from .compound_search_boost import (
4-
BookCompoundSearchBoostSearchBackendDocumentViewSet,
5-
)
6-
from .default import BookDocumentViewSet
7-
from .default_filter_lookup import BookDefaultFilterLookupDocumentViewSet
8-
from .functional_suggester import BookFunctionalSuggesterDocumentViewSet
9-
from .ignore_index_errors import BookIgnoreIndexErrorsDocumentViewSet
10-
from .frontend import BookFrontendDocumentViewSet, BookCustomDocumentViewSet
11-
from .more_like_this import (
12-
BookMoreLikeThisDocumentViewSet,
13-
BookMoreLikeThisNoOptionsDocumentViewSet,
14-
)
15-
from .multi_match import BookMultiMatchSearchFilterBackendDocumentViewSet
16-
from .multi_match_options_phrase_prefix import (
17-
BookMultiMatchOptionsPhasePrefixSearchFilterBackendDocumentViewSet,
18-
)
19-
from .ordering_by_score import BookOrderingByScoreDocumentViewSet
20-
from .ordering_by_score_compound_search import (
21-
BookOrderingByScoreCompoundSearchBackendDocumentViewSet,
22-
)
23-
from .permissions import BookPermissionsDocumentViewSet
24-
from .simple_query_string import (
25-
BookSimpleQueryStringSearchFilterBackendDocumentViewSet,
26-
)
27-
from .simple_query_string_boost import (
28-
BookSimpleQueryStringBoostSearchFilterBackendDocumentViewSet,
29-
)
30-
from .source import BookSourceSearchBackendDocumentViewSet
2+
from .compound_search import *
3+
from .compound_search_boost import *
4+
from .default import *
5+
from .default_filter_lookup import *
6+
from .functional_suggester import *
7+
from .ignore_index_errors import *
8+
from .frontend import *
9+
from .more_like_this import *
10+
from .multi_match import *
11+
from .multi_match_options_phrase_prefix import *
12+
from .ordering_by_score import *
13+
from .ordering_by_score_compound_search import *
14+
from .permissions import *
15+
from .simple_query_string import *
16+
from .simple_query_string_boost import *
17+
from .source import *

examples/simple/search_indexes/viewsets/book/compound_search.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414

1515
__all__ = (
1616
'BookCompoundSearchBackendDocumentViewSet',
17+
'BookCompoundFuzzySearchBackendDocumentViewSet',
1718
)
1819

1920

@@ -31,3 +32,25 @@ class BookCompoundSearchBackendDocumentViewSet(BookDocumentViewSet):
3132
HighlightBackend,
3233
SuggesterFilterBackend,
3334
]
35+
36+
37+
class BookCompoundFuzzySearchBackendDocumentViewSet(BookDocumentViewSet):
38+
"""Book document view set based on compound search backend."""
39+
40+
filter_backends = [
41+
FilteringFilterBackend,
42+
PostFilterFilteringFilterBackend,
43+
IdsFilterBackend,
44+
OrderingFilterBackend,
45+
DefaultOrderingFilterBackend,
46+
CompoundSearchFilterBackend,
47+
FacetedSearchFilterBackend,
48+
HighlightBackend,
49+
SuggesterFilterBackend,
50+
]
51+
52+
search_fields = {
53+
'title': {'fuzziness': 'AUTO'},
54+
'description': None,
55+
'summary': None,
56+
}

0 commit comments

Comments
 (0)