我在mysql中有一个现有的数据。
我使用rake任务将mysql中的所有记录导入到elasticsearch中
然而,当我在Rails中删除、更新、插入记录时,我想知道如何保持同步
Rails如何触发对elasticsearch的修改?谢谢
模型
require 'elasticsearch/model'
class Job < ActiveRecord::Base
attr_accessor :deadline_asap
include Elasticsearch::Model
include Elasticsearch::Model::Callbacks
endRake任务
用于初始ES索引
task :import_all => :environment do
Job.__elasticsearch__.create_index!
end发布于 2016-02-25 16:24:35
它应该已经同步了:添加
include Elasticsearch::Model::Callbacks应该确保任何修改都将调用ElasticSearch API。
要检查这一点,只需修改一个模型并使用ES搜索,它应该会给出包括频繁更新的模型在内的结果。
更新:这是ElasticSearch-Model gem中的Automatic Callbacks documentation
https://stackoverflow.com/questions/35593680
复制相似问题