如何让搜索返回来自作为单词一部分的查询的元素

时间:2011-05-28 21:53:40

标签: ruby-on-rails ruby ruby-on-rails-3 search full-text-search

我正在使用the acts_as_index plugin进行搜索,我注意到它似乎只返回其字符与确切查询匹配的元素。即使查询只是单词的一部分,我也想返回元素。我该如何配置呢?

2 个答案:

答案 0 :(得分:2)

acts_as_indexed仅支持单词开头的部分单词匹配。以下是文档中的示例:

  

以^开头的术语将匹配包含以术语开头的单词的记录。 '^ cat'会找到包含'cat','catapult','caterpillar'等的匹配。

这可以通过索引搜索来实现。在单词中的任何地方搜索部分匹配都会抵消使用索引的好处。

答案 1 :(得分:0)

对于任何其他人来说,由于作为索引的行为接受方法作为字段,您可以编写将字段的所有部分单词作为字符串返回的方法