【发布时间】:2012-01-05 20:28:23
【问题描述】:
我正在使用 Thinking Sphinx 以两种不同的模式进行搜索:
- 在单个模型上进行完整搜索以实现正常搜索功能
- 全面搜索所有型号的自动完成下拉功能
为了这个问题,假设我有一个 Person 和一个 Country 模型。
在执行常规搜索时,我想获取所有国家名称与搜索字符串匹配的人。为此,我在 Person 索引中添加了国家名称的索引。到目前为止一切顺利。
在搜索以填充我的自动完成下拉列表时,我想显示与我的搜索字符串匹配的所有国家和所有人。这里问题出现了。在进行应用程序范围的搜索时,我现在得到:
- 名称与我的搜索字符串匹配的所有国家/地区
- 姓名与我的搜索字符串匹配的所有医生,不幸的是...
- 属于与搜索字符串匹配的国家/地区的所有医生。
最后一部分为用户提供了一些真正令人困惑的自动完成结果。有没有什么简单的方法可以通过使用内置功能来避免这种情况,例如在 Person 模型上有两个索引,然后为每种搜索选择使用哪个索引?
【问题讨论】: