Elasticsearch :: Transport :: Transport :: Errors :: NotFound:[404]

时间:2015-01-13 13:21:29

标签: ruby-on-rails ruby ruby-on-rails-4 elasticsearch

我正在使用ElasticSearch作为我的Post模型的rails pet项目应用程序的全文引擎。在我的posts_controller.rb索引操作中:

    def index
        if params[:query]
            @posts = Post.search(params[:query]).page(params[:page]).records
        else
            @posts = Post.paginate(page: params[:page]).order('created_at DESC')  
        end
    end

其中,如果存在查询参数,则应过滤结果并将其呈现给index.html.erb

我得到的是

Elasticsearch::Transport::Transport::Errors::NotFound: [404] {"error":"IndexMissingException[[posts] missing]","status":404}

我跑了bundle exec rake environment elasticsearch:import:model CLASS='Post',但我仍然遇到同样的错误。

用Marvin Gaye的话说,发生了什么事?

2 个答案:

答案 0 :(得分:4)

尝试:

jasmine.getEnv().addReporter(myReporter);

注意bundle exec rake environment elasticsearch:import:model CLASS='Post' FORCE=true

答案 1 :(得分:1)

这个错误也出现了,我通过以下方式解决了这个问题,

转到Rails控制台 - CTRL,然后在您的MODEL上创建索引,

MODEL_NAME.import force: true