gpt4 book ai didi

Django 使用 Whoosh 搜索但没有 Haystack?

转载 作者:行者123 更新时间:2023-12-05 05:27:29 25 4
gpt4 key购买 nike

我只是想知道 haystack 提供的功能到底是什么以及我是否需要它。

我的意思是搜索和索引是通过 whoosh 完成的。据我所知,haystack 只是提供现成的 View 和表格。如果我想编写自己的表单和 View ,我还需要 haystack 吗?我错过了什么吗?

附言除了 whoosh,我不打算使用任何其他搜索引擎,所以我也不需要 haystacks 的多个搜索引擎包装。

最佳答案

除了 View 、表单和与搜索引擎无关的层之外,Haystack 的另一个强大功能是它能够将 Django 模型映射到搜索索引可以理解的内容。使用 Haystack,您可以轻松地指定模型中的哪些字段应该被索引以及如何(参见 SearchIndex API - http://django-haystack.readthedocs.org/en/latest/searchindex_api.html)。

完成后,您可以利用内置的管理命令在需要时(重新)索引您的数据。

它还带有一些很好的模板标签来帮助呈现搜索结果,比如突出显示匹配位。

是否有您不想使用 Haystack 的特殊原因?它是一个非常非侵入式的插件,让您可以根据需要使用它,并且可以在您以后需要时轻松使用更高级的功能。在我建立的一个站点中,我只使用了 SearchIndex 和 SearchQuerySet API;我建立了自己的观点和形式。最终,如果您最终编写了自己的索引和搜索代码、 View 和表单,那么您基本上已经重写了 Haystack 的大部分内容,在这种情况下,您可能需要考虑使用一些已经在使用并且相当不错的东西测试。

也就是说,我在另一个项目中推出了自己的“Haystack”之类的层,主要是因为数据源没有映射到 Django ORM。在那种情况下,我编写了自己的索引脚本,并使用 PySolr 与我的 Apache Solr 实例进行交互。

鉴于 Whoosh 是用 Python 编写的,我认为它有一个不错的 Python 界面,所以应该不会太难。不过,只有当您的场景有一些特别之处时,我才会这样做。

关于Django 使用 Whoosh 搜索但没有 Haystack?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19331304/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com