ValueError при использовании WHOOSH и Django HayStack
-
29-09-2019 - |
Вопрос
Я пытаюсь настроить HayStack с WHOOSH, но получаю эту ошибку Value «ValueError: Элемент последовательности обновления словаря» имеет длину 9; 2 требуется «Когда я запускаю метод COUNT на объекте Searchqueryset в ./манаже
>>> sqs.count()
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/usr/local/lib/python2.6/dist-packages/haystack/query.py", line 375, in count
return len(clone)
File "/usr/local/lib/python2.6/dist-packages/haystack/query.py", line 48, in __len__
self._result_count = self.query.get_count()
File "/usr/local/lib/python2.6/dist-packages/haystack/backends/__init__.py", line 399, in get_count
self.run()
File "/usr/local/lib/python2.6/dist-packages/haystack/backends/__init__.py", line 354, in run
results = self.backend.search(final_query, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/haystack/backends/__init__.py", line 47, in wrapper
return func(obj, query_string, *args, **kwargs)
File "/usr/local/lib/python2.6/dist-packages/haystack/backends/whoosh_backend.py", line 313, in search
return self._process_results(raw_results, start_offset, end_offset, highlight=highlight, query_string=query_string, spelling_query=spelling_query)
File "/usr/local/lib/python2.6/dist-packages/haystack/backends/whoosh_backend.py", line 350, in _process_results
raw_result = dict(raw_result)
ValueError: dictionary update sequence element #0 has length 9; 2 is required
Решение
Нашел мой ответ здесь https://github.com/toastdrive/django-hayStack/issues/Closed#sue/281. Оказывается, это была проблема версии.
Работает, если я использую эти конкретные версии стога сена и добро
pip install django-haystack==1.0.1-final
easy_install "Whoosh==1.0.0.b11"
Не связан с StackOverflow