支持中文的全文检索 ---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 还有很多问题。最终的解决办法 是通过了互联网一些大手们的分享。谢谢他们!
来源:oschina
链接:https://my.oschina.net/u/226996/blog/39007