我试图用Whoosh后端实现Haystack搜索我的网站。我已经能够成功地设置干草堆应用程序,我可以搜索我已注册的模型,但是当我为其他应用程序创建search_indexes.py文件时,我遇到以下问题:Django草垛索引不止一个模型
我有两种模式:会员和活动。我为它们和模板文件夹中相应的/ search/... _text.txt文件创建了一个search_indexes.py。然后我用./manage.py rebuild_index
我得到以下信息:
Indexing 8 events
Indexing 5 members
不过,我无法看到13个索引项目:
$> ./manage.py shell
$> from haystack.query import SearchQuerySet
$> sqs = SearchQuerySet().all()
$> print sqs.count()
$> 8
而这些被收录的8个事件。因此,从网站上,我只能搜索事件,而不是会员。从'Event'应用程序文件夹中删除search_indexes.py文件,并重做所有索引5个成员,并且可以照常进行搜索。这可能是什么原因?
更新: 我包含在其他应用程序也search_indexes.py文件,看它们是否正确索引。我得到重建索引以下消息:现在
Indexing 8 events.
Indexing 4 guests.
Indexing 5 members.
Indexing 8 sponsors.
,它索引的所有事件和成员,但没有客人和赞助商。我能够搜索事件和成员,但不会对其他两个(同时使用SEARCHQUERY API和网站)
更新:问题似乎已经被改变的haystack.backends.whoosh_backend
源解决。请看答案
草堆和嗖的版本,您使用哪个? – DrMeers 2011-04-03 20:56:18
嗖-1.8.1和草堆1.0 – Vikesh 2011-04-04 07:36:52