Module: Elasticsearch::Model::ClassMethods
- Included in:
- Elasticsearch::Model
- Defined in:
- lib/elasticsearch/model.rb
Instance Method Summary collapse
-
#client ⇒ Object
Get the client common for all models.
-
#client=(client) ⇒ Object
Set the client for all models.
-
#inheritance_enabled ⇒ Object
Check if inheritance is enabled.
-
#inheritance_enabled=(inheritance_enabled) ⇒ Object
Enable inheritance of index_name and document_type.
-
#search(query_or_payload, models = [], options = {}) ⇒ Elasticsearch::Model::Response::Response
Search across multiple models.
-
#settings ⇒ Object
Access the module settings.
Instance Method Details
#client ⇒ Object
Get the client common for all models
142 143 144 |
# File 'lib/elasticsearch/model.rb', line 142 def client @client ||= Elasticsearch::Client.new end |
#client=(client) ⇒ Object
Note:
You have to set the client before you call Elasticsearch methods on the model, or set it directly on the model; see Elasticsearch::Model::Client::ClassMethods#client
Set the client for all models
156 157 158 |
# File 'lib/elasticsearch/model.rb', line 156 def client=(client) @client = client end |
#inheritance_enabled ⇒ Object
Note:
Inheritance is disabled by default.
Check if inheritance is enabled
189 190 191 |
# File 'lib/elasticsearch/model.rb', line 189 def inheritance_enabled @settings[:inheritance_enabled] ||= false end |
#inheritance_enabled=(inheritance_enabled) ⇒ Object
Enable inheritance of index_name and document_type
199 200 201 202 |
# File 'lib/elasticsearch/model.rb', line 199 def inheritance_enabled=(inheritance_enabled) warn STI_DEPRECATION_WARNING if inheritance_enabled @settings[:inheritance_enabled] = inheritance_enabled end |
#search(query_or_payload, models = [], options = {}) ⇒ Elasticsearch::Model::Response::Response
Search across multiple models
By default, all models which include the ‘Elasticsearch::Model` module are searched
179 180 181 182 183 |
# File 'lib/elasticsearch/model.rb', line 179 def search(query_or_payload, models=[], ={}) models = Multimodel.new(models) request = Searching::SearchRequest.new(models, query_or_payload, ) Response::Response.new(models, request) end |
#settings ⇒ Object
Access the module settings
206 207 208 |
# File 'lib/elasticsearch/model.rb', line 206 def settings @settings ||= {} end |