thinking-sphinx rails2.3.8 ruby 1.8.7

北慕城南 提交于 2019-12-04 23:08:59

支持中文的全文检索 ---test 版

1,去http://www.coreseek.cn/products-install/install_on_bsd_linux/  下载coreseek,按照官方提供的安装步骤来安装!安装完成 建议测试一下。

2、安装thinking-sphinx gem 包,建议使用淘宝提供的源来安装,比较快。http://ruby.taobao.org/ 

3、新建一个项目。然后链接mysql数据库 在你的项目下面的Rakefile文件下面加入 require 'thinking_sphinx/tasks'

4、模型的写法案例:class Pp < ActiveRecord::Base
  define_index do
    indexes name, :sortable => true
  end

end

5、然后在config 的目录下面新建一个sphinx.yml 里面的内容为:

development:
  charset_type: zh_cn.utf-8
  bin_path: /usr/local/coreseek/bin
  charset_dictpath: /usr/local/mmseg3/etc
  ngram_len: 0

6、然后用终端进入你的项目下面:rake ts:conf

7、这样会生成sphinx 需要的配置文件,然后生成索引;rake ts:index

8、在启动sphinx 服务:rake ts:start

9、这样你就可以测试了,以下是我的测试结果:

qinjker@qinjker-laptop:~/projects/sphinx$ ruby script/console
Loading development environment (Rails 2.3.11)
ruby-1.8.7-p334 :001 > Pp.search ''
 => [#<Pp id: 18, name: "不是东西">]
ruby-1.8.7-p334 :002 > Pp.search '不'
 => [#<Pp id: 18, name: "不是东西">]
ruby-1.8.7-p334 :003 > Pp.search '是'
 => [#<Pp id: 18, name: "不是东西">] 

在这期间我遇到的问题总结:首先我安装了不支持中文的sphinx,虽然搜索成功了,但是不支持中文的。后来我就安装了coreseek,遇到了unknown key name 'sql_attr_string'这个问题。解决的办法就是我把 之前装的sphinx卸载。sudo make uninstall  还有很多问题。最终的解决办法 是通过了互联网一些大手们的分享。谢谢他们!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!