2

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

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

我目前唯一拥有的是 JQuery Chosen,它可以满足我的大部分需求。

  1. 它在下拉列表中提供建议
  2. 可能是搜索一个名字,然后得到一个 ID
  3. 可以搜索任何数据列表

我对 Chosen 的问题是它只返回一个值,所以如果我用它从多个表中搜索 ID,它可能会返回相同的数据。

我正在考虑用 Json 和 Ajax 做一些魔术,但是,这两个是我的新朋友,所以我想知道,是否有更好的解决方案?

4

1 回答 1

1

简短的回答,不。

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

提示,术语叫做typeahead.

此外,听起来您正在尝试使用 Django ORM 实现基本搜索。尽管实践是个好​​老师,但您应该研究django-haystack 之类的库,可能使用易于设置的搜索引擎,例如Whoosh。这将允许您设置不同的模型以便轻松搜索。

Haystack 有据可查,所以应该可以理解。您的问题相当广泛,因此我会尝试进行设置并相应地提出更详细的问题。

于 2013-01-04T13:09:42.613 回答