【问题标题】:Rails - Elasticsearch: Cannot create index on HerokuRails - Elasticsearch:无法在 Heroku 上创建索引
【发布时间】:2020-05-31 05:20:33
【问题描述】:

由于最近没有使用,我在 Heroku 上重新安装了 Bonsai-Elasticsearch 插件。它以前运行良好,但现在当我在我的 Rails 控制台中输入时:

 Lead.__elasticsearch__.create_index! force:true

我收到此错误:

Elasticsearch::Transport::Transport::Errors::BadRequest ([400] {"error":{"root_cause":[{"type":"illegal_argument_exception","re​​ason":"The 映射定义不能嵌套在类型 [_doc] 下,除非 include_type_name 设置为 true."}],"type":"illegal_argument_exception","re​​ason":"映射 定义不能嵌套在类型 [_doc] 下,除非 include_type_name 设置为 true。"},"status":400})

我该如何解决这个问题?

版本: 导轨:5.2.2 红宝石:2.6.3 弹性搜索模型:6.0.0 弹性搜索轨道:6.0.0

【问题讨论】:

    标签: ruby-on-rails ruby elasticsearch heroku


    【解决方案1】:

    在 Bonsai Elasticsearch 中,我们必须自己创建索引。

    您可以通过

    创建帖子模型的索引
    curl -XPUT https://your:bonsai@url-here.us-east-1.bonsai.io/posts
    

    您可以通过

    获取您的盆景网址
    heroku config | grep BONSAI
    

    This 是我发现你可以使用的最好的教程。

    除此之外,您还可以通过以下方式将模型导入到 elasticsearch 中

    heroku run bundle exec rake environment elasticsearch:import:model CLASS='Post' FORCE=true
    

    如果您遇到上述相同的错误,则通过运行上述命令,您应该尝试更改您的盆景和其他应该与 elasticsearch 版本兼容的 elasticsearch gem。

    【讨论】:

      猜你喜欢
      • 2020-03-20
      • 1970-01-01
      • 2016-01-19
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 2021-07-10
      • 2018-08-27
      • 2013-09-12
      相关资源
      最近更新 更多