使用太阳黑子和Rails搜索字符串字段

时间:2012-04-25 00:01:33

标签: solr sunspot-rails

我的团队正在尝试将Solr和Sunspot-Rails作为我们应用程序的搜索提供程序。我们的故事要求除了文本字段之外还要搜索某些字符串字段。我看到有些人将这些字段聚合到一个带有ActiveRecord回调的整合索引字段(带有Text类型)。这是我唯一的希望还是我缺少一个通配符论证?

1 个答案:

答案 0 :(得分:1)

您可以定义将被编入索引的字段

class Post < ActiveRecord::Base
  searchable do
    text :title, :body
    text :comments do
      comments.map { |comment| comment.body }
    end
    string  :sort_title do
      title.downcase.gsub(/^(an?|the)/, '')
    end
  end 
end

然后你搜索它们你可以像这样指定你想要搜索的字段

Post.search do
  fulltext 'pizza' do
    fields(:body, :title)
  end
end

如果您未指定字段,则会将搜索应用于索引的所有文本字段

Post.search do
  fulltext 'best pizza'
end