在RoR中搜索文档

时间:2011-10-05 16:40:18

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

这是交易:我有一个带有大量数据库项目的RoR应用程序(通过Sunspot索引),其中一些带有文件附件(通常是PDF和纯文本文件)。在全文搜索中包含这些文档内容的最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

使用像pdf-reader这样的PDF阅读器宝石,并在太阳黑子中对其进行索引。

class Item < ActiveRecord::Base
  searchable if: proc{ |topic| topic.try(:price).try(:>,0) } do
    text    :attachment_text  # index result returned from attachment() method
  end

  # getting text out of attachment
  def attachment_text
    # pseudo code of determining attachment format
    case attachment.extension
    when :pdf
      # Use pdf-reader gem get all the text from all pages
    when :txt
      return open(attachment).read()
    end
  end
end