mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-21 21:53:30 +00:00
Add Whoosh index
This commit is contained in:
parent
ac31c182c5
commit
5b95299bde
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,3 +9,4 @@ doc/html
|
||||
data/
|
||||
static/
|
||||
sith/settings_custom.py
|
||||
sith/whoosh_index/
|
||||
|
@ -190,7 +190,7 @@ class User(AbstractBaseUser):
|
||||
return reverse('core:user_profile', kwargs={'user_id': self.pk})
|
||||
|
||||
def __str__(self):
|
||||
return self.username
|
||||
return self.get_display_name()
|
||||
|
||||
def to_dict(self):
|
||||
return self.__dict__
|
||||
|
19
core/search_indexes.py
Normal file
19
core/search_indexes.py
Normal file
@ -0,0 +1,19 @@
|
||||
from haystack import indexes
|
||||
|
||||
from core.models import User
|
||||
|
||||
|
||||
class UserIndex(indexes.SearchIndex, indexes.Indexable):
|
||||
text = indexes.CharField(document=True, use_template=True)
|
||||
|
||||
def get_model(self):
|
||||
return User
|
||||
|
||||
def index_queryset(self, using=None):
|
||||
"""Used when the entire index for model is updated."""
|
||||
return self.get_model().objects.all()
|
||||
|
||||
def prepare(self, obj):
|
||||
ret = super(UserIndex, self).prepare(obj)
|
||||
print(ret)
|
||||
return ret
|
3
core/templates/search/indexes/core/user_text.txt
Normal file
3
core/templates/search/indexes/core/user_text.txt
Normal file
@ -0,0 +1,3 @@
|
||||
{{ object.get_display_name|safe }}
|
||||
{{ object.get_display_name|safe|slugify }}
|
||||
{{ object.get_display_name|safe|slugify|cut:"-" }}
|
@ -9,5 +9,7 @@ djangorestframework
|
||||
django-phonenumber-field
|
||||
django-ajax-selects
|
||||
reportlab
|
||||
django-haystack
|
||||
whoosh
|
||||
# mysqlclient
|
||||
|
||||
|
@ -46,6 +46,7 @@ INSTALLED_APPS = (
|
||||
'django_jinja',
|
||||
'rest_framework',
|
||||
'ajax_select',
|
||||
'haystack',
|
||||
'core',
|
||||
'club',
|
||||
'subscription',
|
||||
@ -142,6 +143,13 @@ TEMPLATES = [
|
||||
},
|
||||
]
|
||||
|
||||
HAYSTACK_CONNECTIONS = {
|
||||
'default': {
|
||||
'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine',
|
||||
'PATH': os.path.join(os.path.dirname(__file__), 'whoosh_index'),
|
||||
},
|
||||
}
|
||||
|
||||
WSGI_APPLICATION = 'sith.wsgi.application'
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user