Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
module ElasticsearchIndexer
extend ActiveSupport::Concern
included do
after_commit :reindex_model
def reindex_model
updated_fields = self.previous_changes.keys
# For getting ES Index fields you can also maintain constant
# on model level or get from the search_data method.
es_index_fields = self.search_data.stringify_keys.keys
return if (updated_fields & es_index_fields).blank?
ElasticsearchWorker.perform_async(self.id, klass)
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment