django在键入时搜索多个表

时间:2013-01-04 12:55:31

标签: django search while-loop typing typeahead

我希望能够将我的搜索查询输入到输入字段中,并在键入时,获取一个下拉列表,其中包含我的Django数据库中匹配对象的建议。

搜索应仅匹配某些特定表,并且仅搜索特定列,但是,返回的对象必须具有完整的内容行。

我目前唯一得到的就是JQuery Chosen,它完成了我想要的大部分工作。

  1. 它在下拉列表中提供建议
  2. 可能会搜索名称并作为回报获取ID
  3. 可以搜索任何数据列表
  4. 我对Chosen的麻烦是它只返回一个值,所以如果我用它来搜索多个表中的ID,它可能会返回相同的数据。

    我正在考虑的是与Json和Ajax做一些魔术,然而,这两个人是我的新朋友,所以我想知道,如果有更好的解决方案?

1 个答案:

答案 0 :(得分:1)

简短的回答,不。

你应该像你自己建议的那样用Ajax和JSON来解决这个问题。

提示,术语称为 typeahead

听起来您正在尝试使用Django ORM实现基本搜索。 虽然练习是一位好老师,但您应该查看像django-haystack这样的库,可能还有一个易于设置的搜索引擎,如Whoosh。这将允许您设置不同的模型以便轻松搜索。

干草堆有很好的记录,所以它应该是可以理解的。你的问题相当广泛,所以我会尝试进行设置并相应地提出更详细的问题。