gpt4 book ai didi

ruby-on-rails - Elasticsearch Rails gem

转载 作者:行者123 更新时间:2023-12-03 00:34:01 24 4
gpt4 key购买 nike

我想问一下,如果有 gem ,您会推荐我使用它,以将我的Rails应用程序与诸如Searchkick或Chewy之类的elasticsearch连接起来。如果有一些有关如何使用它的简单教程,那将非常好。谢谢。

最佳答案

这取决于您使用的是哪种Rails / elasticsearch组合:

elasticsearch版本> = 1

elasticsearch-rails

elasticsearch版本<= 1

Tire

轮胎有很多示例,elasticsearch导轨并不多,因此这里是一个快速入门:

# Gemfile
gem 'elasticsearch-model'
gem 'elasticsearch-rails'
bundle install
# lib/tasks/elasticsearch.rake
require 'elasticsearch/rails/tasks/import'

将您现有的模型数据从db加载到elasticsearch中:
bundle exec rake environment elasticsearch:import:model CLASS='YourModel'
# app/models/your_model.rb
class YourModel < ActiveRecord::Base
include Elasticsearch::Model
include Elasticsearch::Model::Callbacks
end

代码中的其他位置(例如方法中的 Controller 或范围或您喜欢的任何位置)
# search with field filter
@your_models = YourModel.search(query: { match: { your_field: "whatever" } }).records

# faceted search
@your_models = YourModel.search(query: { match: { your_field: "whatever" } }, facets: { your_facet_name: { terms: { field: "your_facet_field", all_terms: true, order: "term" } } }).records
# to access to the faceted part of the elasticsearch response:
facet_results = @your_models..response.response['facets']['your_facet_name']['terms']

关于ruby-on-rails - Elasticsearch Rails gem ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23197158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com