Как расширить/подкласс SearchLogic::Search?

Вот что я пытаюсь:

приложение/модели/product.rb

class Product < ActiveRecord::Base
  class << self
    def searchlogic(conditions = {})
      ProductSearch.new(self, scope(:find), conditions)
    end
  end
end

приложение/модели/product_search.rb

require "searchlogic/search"

class ProductSearch < SearchLogic::Search

  include SearchLogic

  def foobar
    puts :hello_world
  end

end

контрольная работа

~/project $ script/console
>> @search = Product.searchlogic

NameError: неинициализированная константа SearchLogic

Как правильно создать подкласс или расширить SearchLogic::Search?


person maček    schedule 04.09.2010    source источник


Ответы (1)


Учитывая, что здесь на SO не так много помощи по логике поиска, я решил не удалять этот вопрос и вместо этого ответить на него сам.

Имя модуля Searchlogic со строчными буквами L.

Вот правильный app/models/product_search.rb

class ProductSearch < Searchlogic::Search

  include Searchlogic

  def foobar
    puts :custom_method
  end

end
person maček    schedule 04.09.2010