在Ruby on Rails下使用Thinking Sphinx时出错

时间:2011-01-26 17:06:38

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

我在我的RoR应用程序中使用Thinking-Sphinx作为插件,但我有这个错误:

对于#

未定义的方法`define_index'

它可能是什么?

模型

class Group < ActiveRecord::Base
  belongs_to :retailer_product
  has_many :group_ranges, :dependent => :destroy
  has_many :group_clients, :dependent => :destroy
  has_many :group_notifications, :dependent => :destroy

  define_index do
    indexes retailer_product.review
    indexes retailer_product.retailer.retailer_name
    indexes retailer_product.product.pr_id
    indexes retailer_product.product.product_name
    indexes retailer_product.product.product_tags.tag.tag, :as => :ptag #indexes tag.tag
    indexes retailer_product.product.product_properties.property.value, :as => :pvalue #indexes product_property.value
    indexes retailer_product.product.brand.brand, :as => :product_brand

    has :id

    where "groups.active=1"

    group_by "groups.id"
  end
end

的environment.rb

# Be sure to restart your server when you modify this file

# Specifies gem version of Rails to use when vendor/rails is not present
RAILS_GEM_VERSION = '2.3.8' unless defined? RAILS_GEM_VERSION

# Bootstrap the Rails environment, frameworks, and default configuration
require File.join(File.dirname(__FILE__), 'boot')

ENV['RAILS_RELATIVE_URL_ROOT']="/project"

Rails::Initializer.run do |config|
  config.time_zone = 'UTC'
end

提前致谢!

1 个答案:

答案 0 :(得分:3)

config.gem(
  'thinking-sphinx',
  :lib     => 'thinking_sphinx',
  :version => '1.3.11'
)

请阅读: http://freelancing-god.github.com/ts/en/installing_thinking_sphinx.html

编辑environment.rb

后重启应用程序