我想使用 ElasticSearch + Tire 来搜索存储在 MongoDB 中。
但是,当我尝试执行搜索时出现以下错误:
SearchController#index 中的Tire::Search::SearchRequestFailed
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
Controller :
def search
Event.tire.search(params[:q])
end
请问有什么解决办法吗?
最佳答案
...甚至更好,只需运行:
rake environment tire:import CLASS=Event FORCE=true
关于ruby-on-rails - Ruby:ElasticSearch + 轮胎错误 Tire::Search::SearchRequestFailed - IndexMissingException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10220825/