Django-Haystack:了解Haystack中数据模板的使用

时间:2013-08-24 08:11:04

标签: django django-haystack

我是Haystack的新手。我无法理解为什么我们必须使用模板来呈现我们想要搜索的文本。更简单,为什么我们不必使用这样的东西?

text = indexes.CharField(document=True, "and here the attributes to search")

更新 更具体地说,我们有一个应用places,这里有一个模型countries。 在模型中,我希望可以从干草堆中搜索字段capitalbiggest_cities。所以在search_indexes.py中我放了

text = indexes.CharField(document=True, use_template=True )

在路径搜索/ indexes / places / countries_text.txt中创建模板后 在这里我把

{{ object.capital }}
{{ object.biggest_cites }}

问题是:为什么我们必须使用模板才能实现目标?

使用像

这样的东西并不容易
text = indexes.CharField(document=Truer, model_attr='capital',model_attr='biggest_cites')

1 个答案:

答案 0 :(得分:1)

您是否已阅读此Haystack文档页面http://django-haystack.readthedocs.org/en/latest/searchindex_api.html

如果你没有,你必须。如果有,请再次阅读。

SearchIndex API包含有关Haystack如何在您的项目中工作的宝贵基础知识。它还可以为您提供有用的洞察力,“您可以使用模板来搜索数据。”

  

为什么我们必须使用模板才能实现目标?

来自Haystack Docs:

“...我们在文本字段中提供use_template = True。这允许我们使用数据模板(而不是容易出错的串联)来构建搜索引擎将用于搜索的文档”< / I>

如您所见,我们可以选择是否使用模板。

Ps:对于已故的帖子感到抱歉;我希望它可以帮助你。