如何在django中构建一个gmail风格的搜索?

时间:2012-02-02 23:42:58

标签: django search

我想使用可配置的运算符和实体为我的网站构建一个gmail风格的搜索应用。例如,gmail允许您从:键入:然后通过from属性搜索您的电子邮件记录。我想做同样的事情,但是例如票务里程碑或产品说明等。

有关如何入门的任何建议?我应该尝试利用像django-haystack这样的现有项目吗?或者我应该尝试使用更基本的django功能来自己编辑?

1 个答案:

答案 0 :(得分:1)

这在haystack中相当容易实现 - SearchQuerySets有一个与django的查询集非常相似的过滤方法,您可以使用它来过滤自定义参数。请查看searchqueryset docs了解更多信息。

要实际构建应用程序,我会编写一个自定义SearchForm来解析查询值中的参数:值部分,使用它们来过滤或搜索相关属性,然后使用任何剩余的关键字按照正常情况进行搜索在过滤的searchqueryset上(使用SearchQuerySet.auto_query)