在网站中经常用到全文检索,这样出于使用的方便打算给Everyday也做个全文检索的功能,网上比较了几个全文检索的gem,发现sunspot(内置了solr引擎)比较适合我的需求,并没有用到之前名气稍大的think_sphinx,下面介绍下rails3和Sunspot的集成:
安装sunspot gem:
$ gem install sunspot
修改#rails_app/Gemfile:
$ gem 'sunspot_rails'
使用如下命令生成#rails_app/config/sunspot.yml:
$ rails g sunspot_rails:install
对生成的sunspot.yml不需要做任何修改,里面定义了对solr 引擎的配置:
production:
solr:
hostname: localhost
port: 8983
log_level: WARNING
development:
solr:
hostname: localhost
port: 8982
log_level: INFO
test:
solr:
hostname: localhost
port: 8981
由于sunspot gem 中内置了solr引擎,不需要单独安装直接启动即可:
$ bundle exec rake sunspot:solr:start
更详细的内容看这里:
http://www.everyday-cn.com/zh/show_blog/rails3-sunspot-gem