我正在使用django-haystack在我的网站上搜索。 我的问题是,如果在特定字段中找到搜索词,我希望将搜索结果放在首位。 假设我搜索博客条目,然后我想在标题字段中找到搜索词的顶部显示这些结果。
我阅读了有关现场助推的干草堆文档,但我不明白它应该如何运作。
答案 0 :(得分:4)
你可以:
修改您的搜索索引文件,例如
class BlogEntryIndex(SearchIndex):
text = CharField(document=True, use_template=True)
title = CharField(model_attr='title', boost=1.125)
注意:正如评论中所指出的,下面只会提升标题而不是字段,使用上述内容。
或者您可以将提升传递给SearchQuerySet,例如在haystack urls文件中。
sqs = SearchQuerySet().boost('title', 1.125)
urlpatterns = patterns('haystack.views',
url(r'^$', SearchView(searchqueryset=sqs), name='haystack_search'),
)