Method: Elasticsearch::Model::Indexing::ClassMethods#delete_index!

Defined in:
lib/elasticsearch/model/indexing.rb

#delete_index!(options = {}) ⇒ Object

Deletes the index with corresponding name

Examples:

Delete the index for the ‘Article` model


Article.__elasticsearch__.delete_index!

Pass a specific index name


Article.__elasticsearch__.delete_index! index: 'my-index'
[View source]

277
278
279
280
281
282
283
284
285
286
287
288
289
290
# File 'lib/elasticsearch/model/indexing.rb', line 277

def delete_index!(options={})
  target_index = options.delete(:index) || self.index_name

  begin
    self.client.indices.delete index: target_index
  rescue Exception => e
    if e.class.to_s =~ /NotFound/ && options[:force]
      client.transport.logger.debug("[!!!] Index does not exist (#{e.class})") if client.transport.logger
      nil
    else
      raise e
    end
  end
end