我正在使用Django + haystack + Solr实现搜索功能。
最初,我有3条记录并执行'manage.py rebuild_index'命令,并将3条记录编入索引。这些记录开始显示在结果中。在管理控制台中,我添加了一条新记录。这不会显示在搜索结果中。
但是当再次执行'manage.py rebuild_index'命令时,它会说索引4条记录,然后新的记录显示在结果中。
由于
答案 0 :(得分:1)
默认SearchIndex
不会自动为新项目编制索引。这意味着您需要定期调用update_index
以保持Solr索引当前。
另一种选择是使用RealTimeSearchIndex
,它会在创建搜索索引时向搜索索引添加项目。 http://docs.haystacksearch.org/dev/searchindex_api.html#realtimesearchindex
第三种选择是使用Haystack最佳实践中建议的QueuedSearchIndex
。为此,您可以看到以下两个其他应用:https://github.com/toastdriven/queued_search或https://github.com/ennio/celery-haystack。