欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  资讯频道

通过RoR ActiveRecord 进行全文检索(翻译)

程序员文章站 2022-03-24 13:37:18
...

我需要对我的文章进行全文检索,但是我不知道这些信息包含哪些关键字。你想知道答案吗。

那就来吧,ferret 可以解答一切问题 ,我们继续说

如果你不知道ferret 是什么的话请查看下面的连接 http://ferret.davebalmain.com/trac

 

如果你需要搜索关键字“Giant”,你需要创建一个索引ferret 在内存中(你需要安装ferret)所有的文章记录索引跟采集所有与IDs匹配的关键字

 

代码如下

index=Ferret::I.new

Story.find(:all).each { |s| index << {:id=>s.id, :content=>s.inspect} }

index.search_each('Giant', :limit=>100) do |id, score| 
  puts "Active record ID: #{index[id][:id]} with score #{score}"
end