草庐IT

ruby-on-rails - Ruby:ElasticSearch + 轮胎错误 Tire::Search::SearchRequestFailed - IndexMissingException?

coder 2023-05-05 原文

我想使用 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/

有关ruby-on-rails - Ruby:ElasticSearch + 轮胎错误 Tire::Search::SearchRequestFailed - IndexMissingException?的更多相关文章

随机推荐