Ruby:ElasticSearch + Ошибка шины Tire::Search::SearchRequestFailed -IndexMissingException?

Я хочу использовать ElasticSearch + Tire для поиска сохраненных в МонгоДБ.

Однако я получаю следующую ошибку, когда пытаюсь выполнить поиск:

Tire::Search::SearchRequestFailed in SearchController#index

404 : {"error":"IndexMissingException[[events] missing]","status":404}

Насколько я понимаю, для события отсутствуют индексы, хотя я сказал создать их при запуске db:setup.

Модель:

class Event
  include Mongoid::Document
  include Mongoid::Timestamps 

  include Tire::Model::Search
  include Tire::Model::Callbacks

  field :name, :type => String
  field :description, :type => String
  field :started_at => Time
  field :ended_at => Time

  def to_indexed_json
    self.as_json
  end
end

Контроллер:

  def search
    Event.tire.search(params[:q])
  end

Есть идеи, как решить эту проблему?

6
задан gabriel 22 April 2012 в 20:09
поделиться