在Rails中设置思考Sphinx

时间:2011-11-21 00:04:06

标签: ruby-on-rails gem sphinx thinking-sphinx

我正在尝试在我的Rails 3应用中设置Thinking Sphinx,但我收到了“路由错误”。

我设置了MySQL并安装了Sphinx而没有错误。我的gemfile包含:

gem "riddle", "~> 1.5.0"
gem "thinking-sphinx", "~> 2.0.10"

这些安装没有问题。
我的模型包含:

define_index do
    indexes :name
    indexes acad_field
    indexes expertise
    indexes interests
    indexes experience
    indexes marital_status
    indexes email
    indexes place_of_birth
    indexes birthyear
    indexes hometown
    indexes current_residence
    indexes languages
    indexes nationalities
    indexes ethnicities_mom_dad
    indexes institution
    indexes program
end

我控制器中的索引操作包含:

def index
 @profiles = Profile.search params[:search]
 respond_to do |format|
   format.html # index.html.erb
   format.json { render :json => @profiles }
 end
end

这就是我的路线:

match "profiles?search=:search", :to => "profiles#index"

当我尝试通过直接在浏览器中输入搜索条件URL来运行搜索时,我收到此错误:

Routing Error

undefined method `define_index' for #<Class:0xb3ada670>

我需要做什么?

1 个答案:

答案 0 :(得分:4)

正在运行rake thinking_sphinx:rebuild修复了我的“未定义方法”问题。