如何在应用程序范围内提供ElasticSearch Client?

时间:2016-02-29 13:21:16

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

我在Rails应用程序中使用elasticsearch_ruby。我选择不使用elasticsearch_rails,因为我不希望与ActiveRecord对象进行如此紧密的集成。

使用elasticsearch_rubyelasticsearch_transport,可以创建一个新的客户端:

client = ElasticSearch::Client.new(log:true)

如何使此客户端可以访问应用程序。 我只想创建一次实例,然后在应用程序范围内使用它。

这样做的最佳做法是什么?

似乎有一些明显的东西我不知道。

1 个答案:

答案 0 :(得分:2)

使用初始化程序
 1.在configuration/initializer/elasticsearch.rb下创建一个文件  2.像$elasticsearch_client=ElasticSearch::Client.new(log:true)一样初始化您的客户  3.在rails应用程序的任何位置使用此$elasticsearch_client