Haystack и solr: новые записи не проиндексированы - PullRequest
1 голос
/ 15 ноября 2011

Я реализую функцию поиска с помощью Django + haystack + Solr.

Изначально у меня было 3 записи, я выполнил команду manage.py rebuild_index и проиндексировал 3 записи.Эти записи начали показываться в результатах.Из консоли администратора я добавил новую запись.Это не отображается в результатах поиска.

Но при выполнении снова введите команду manage.py rebuild_index, в которой будет указано индексирование 4 записей, а затем в результате появится новая запись.

Спасибо

1 Ответ

1 голос
/ 15 ноября 2011

По умолчанию SearchIndex не индексирует новые элементы автоматически. Это означает, что вам необходимо периодически вызывать update_index, чтобы сохранить текущий индекс индекса Solr.

Другой вариант - использовать RealTimeSearchIndex, который добавляет элементы в поисковый индекс по мере их создания. http://docs.haystacksearch.org/dev/searchindex_api.html#realtimesearchindex

Третий вариант - использовать QueuedSearchIndex в соответствии с рекомендациями лучших практик Haystack. Для этого вы можете увидеть эти два дополнительных приложения: https://github.com/toastdriven/queued_search или https://github.com/ennio/celery-haystack.

...