Ruby On Rails中的弹性搜索升级从0.90到2.x

时间:2016-02-10 06:54:30

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

在我目前使用的Ruby on Rails应用程序中,弹性搜索的版本是 0.90 ,我们使用了“轮胎”宝石。

现在我想用最新版本的elasticsearch(“2.x”)更新它。

Tier gem现在不支持elasticsearch版本1.x / 2.x,他们建议使用“elasticsearch-rails”gem,但是如何使用它将我的应用程序从旧版本迁移到新版本。

1 个答案:

答案 0 :(得分:0)

嗯,除了include Elasticsearch::Model include Elasticsearch::Model::Callbacks 和捆绑包中的明显修改之外,您还必须为初学者修改模型:

我建议您查看ES-rails GitHub:自述文件的记录非常清楚。

一般的想法是包括

def as_indexed_json()

在每个模型中,然后尽可能使用ElasticSearch DSL。

如果您想要以与源代码不同的形式(即公共属性)索引模型,那么创建一个{{1}}将在索引时由ES使用。

ES-model GitHub

中的所有内容都有详细记录

(警告:'main'elasticsearch-rails repo包含3个gem repos,因此您必须在repo树中导航才能找到适合您的自述文件!)

如果您详细了解自己的需求,我们可能会为您提供更多帮助!