我是Haystack的新手。我无法理解为什么我们必须使用模板来呈现我们想要搜索的文本。更简单,为什么我们不必使用这样的东西?
text = indexes.CharField(document=True, "and here the attributes to search")
更新
更具体地说,我们有一个应用places
,这里有一个模型countries
。
在模型中,我希望可以从干草堆中搜索字段capital
和biggest_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')
答案 0 :(得分:1)
您是否已阅读此Haystack文档页面http://django-haystack.readthedocs.org/en/latest/searchindex_api.html?
如果你没有,你必须。如果有,请再次阅读。
SearchIndex API包含有关Haystack如何在您的项目中工作的宝贵基础知识。它还可以为您提供有用的洞察力,“您可以使用模板来搜索数据。”
为什么我们必须使用模板才能实现目标?
来自Haystack Docs:
“...我们在文本字段中提供use_template = True。这允许我们使用数据模板(而不是容易出错的串联)来构建搜索引擎将用于搜索的文档”< / I>
如您所见,我们可以选择是否使用模板。
Ps:对于已故的帖子感到抱歉;我希望它可以帮助你。