如何使用弹性搜索设置Django Haystack排队搜索

时间:2018-07-01 08:17:13

标签: django elasticsearch full-text-search django-haystack django-signals

我正在尝试设置queued_search,但找不到任何有关如何端到端设置的文档。 这是我所做的

pip install queued_search

queued_search添加到INSTALLED_APPS 这是我的serachindex.py

class PostCreateModelIndex(indexes.Indexable, QueuedSearchIndex):
   text = indexes.CharField(document=True, use_template=True,template_name='search/indexes/catalogue/post_text.txt')
   author = indexes.CharField(model_attr='author__name',faceted=True )
   title = indexes.EdgeNgramField(model_attr='title')
   ...

在我的settings.py中:

HAYSTACK_SIGNAL_PROCESSOR = 'queued_search.signals.QueuedSignalProcessor'

但在运行update_index命令时会说

raise InvalidBackend("QUEUE_BACKEND not set.")

此错误后,因为我正在使用弹性搜索

QUEUE_BACKEND  = 'elasticsearch'

它给我错误

raise InvalidBackend("Unable to import QUEUE BACKEND '%s' does not appear to be valid." % BACKEND)
queues.InvalidBackend: Unable to import QUEUE BACKEND 'elasticsearch' does not appear to be valid.

我不知道弹性搜索应该是QUEUE_BACKEND是什么,以及如何完全设置它。 这是我找到的文档 https://github.com/django-haystack/queued_search

0 个答案:

没有答案