forked from django-haystack/django-haystack
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconstants.py
More file actions
58 lines (45 loc) · 1.64 KB
/
constants.py
File metadata and controls
58 lines (45 loc) · 1.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# encoding: utf-8
from django.conf import settings
DEFAULT_ALIAS = "default"
# Reserved field names
ID = getattr(settings, "HAYSTACK_ID_FIELD", "id")
DJANGO_CT = getattr(settings, "HAYSTACK_DJANGO_CT_FIELD", "django_ct")
DJANGO_ID = getattr(settings, "HAYSTACK_DJANGO_ID_FIELD", "django_id")
DOCUMENT_FIELD = getattr(settings, "HAYSTACK_DOCUMENT_FIELD", "text")
# Default operator. Valid options are AND/OR.
DEFAULT_OPERATOR = getattr(settings, "HAYSTACK_DEFAULT_OPERATOR", "AND")
# Default values on elasticsearch
FUZZINESS = getattr(settings, "HAYSTACK_FUZZINESS", "AUTO")
FUZZY_MIN_SIM = getattr(settings, "HAYSTACK_FUZZY_MIN_SIM", 0.5)
FUZZY_MAX_EXPANSIONS = getattr(settings, "HAYSTACK_FUZZY_MAX_EXPANSIONS", 50)
# Default values on whoosh
FUZZY_WHOOSH_MIN_PREFIX = getattr(settings, 'HAYSTACK_FUZZY_WHOOSH_MIN_PREFIX', 3)
FUZZY_WHOOSH_MAX_EDITS = getattr(settings, 'HAYSTACK_FUZZY_WHOOSH_MAX_EDITS', 2)
# Valid expression extensions.
VALID_FILTERS = set(
[
"contains",
"exact",
"gt",
"gte",
"lt",
"lte",
"in",
"startswith",
"range",
"endswith",
"content",
"fuzzy",
]
)
FILTER_SEPARATOR = "__"
# The maximum number of items to display in a SearchQuerySet.__repr__
REPR_OUTPUT_SIZE = 20
# Number of SearchResults to load at a time.
ITERATOR_LOAD_PER_QUERY = getattr(settings, "HAYSTACK_ITERATOR_LOAD_PER_QUERY", 10)
# A marker class in the hierarchy to indicate that it handles search data.
class Indexable(object):
haystack_use_for_indexing = True
# For the geo bits, since that's what Solr & Elasticsearch seem to silently
# assume...
WGS_84_SRID = 4326