Я хочу использовать 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
Есть идеи, как решить эту проблему?