Haystack和solr:未编入索引的新记录

时间:2011-11-14 20:40:52

标签: django django-haystack

我正在使用Django + haystack + Solr实现搜索功能。

最初,我有3条记录并执行'manage.py rebuild_index'命令,并将3条记录编入索引。这些记录开始显示在结果中。在管理控制台中,我添加了一条新记录。这不会显示在搜索结果中。

但是当再次执行'manage.py rebuild_index'命令时,它会说索引4条记录,然后新的记录显示在结果中。

由于

1 个答案:

答案 0 :(得分:1)

默认SearchIndex不会自动为新项目编制索引。这意味着您需要定期调用update_index以保持Solr索引当前。

另一种选择是使用RealTimeSearchIndex,它会在创建搜索索引时向搜索索引添加项目。 http://docs.haystacksearch.org/dev/searchindex_api.html#realtimesearchindex

第三种选择是使用Haystack最佳实践中建议的QueuedSearchIndex。为此,您可以看到以下两个其他应用:https://github.com/toastdriven/queued_searchhttps://github.com/ennio/celery-haystack