3

我一直在阅读有关 Haystack、Whoosh、Xapian 等的信息。但是我并没有真正了解它们的确切用途以及它们之间的关系。例如,据说

在第三方应用程序上启用搜索,而无需接触该应用程序的代码。

有人可以向我解释这些是用来做什么的,也许可以提供一个很好的链接,并且足够简单,可以让初学者理解。谢谢

4

1 回答 1

7

Haystack与 Whoosh/Xapian/etc 是不同的野兽:

Haystack 为 Django 提供模块化搜索。它具有统一、熟悉的 API,允许您插入不同的搜索后端(例如 Solr、Whoosh、Xapian 等),而无需修改代码。

常见问题解答(强调添加):

什么是干草堆?

Haystack 旨在成为您选择的搜索引擎的便携式界面。有些人可能会称其为搜索框架、抽象层或您所拥有的。这个想法是您编写一次搜索代码,并且应该能够根据您的情况在后端之间自由切换。

提到的“搜索后端”是具有自己 API 的搜索库。Haystack 在任何一个特定的搜索库之上(并且独立于)提供了一个统一的 API。

于 2011-10-28T15:33:13.860 回答