Module: Spotlight::SolrDocument::ClassMethods
- Defined in:
- app/models/concerns/spotlight/solr_document.rb
Overview
Class-level methods
Instance Method Summary collapse
- #build_for_exhibit(id, exhibit, attributes = {}) ⇒ Object
- #reindex(id) ⇒ Object
- #reindex_all ⇒ Object
- #resource_type_field ⇒ Object
- #solr_field_for_tagger(tagger) ⇒ Object
- #solr_field_prefix(exhibit) ⇒ Object
- #visibility_field(exhibit) ⇒ Object
Instance Method Details
#build_for_exhibit(id, exhibit, attributes = {}) ⇒ Object
27 28 29 30 31 |
# File 'app/models/concerns/spotlight/solr_document.rb', line 27 def build_for_exhibit(id, exhibit, attributes = {}) new(unique_key => id) do |doc| doc.sidecar(exhibit).tap { |x| x.assign_attributes(attributes) }.save! # save is a nop if the sidecar isn't modified. end end |
#reindex(id) ⇒ Object
33 34 35 36 37 |
# File 'app/models/concerns/spotlight/solr_document.rb', line 33 def reindex(id) find(id).reindex rescue Blacklight::Exceptions::InvalidSolrID => e Rails.logger.debug "Unable to find document #{id}: #{e}" end |
#reindex_all ⇒ Object
39 40 41 |
# File 'app/models/concerns/spotlight/solr_document.rb', line 39 def reindex_all find_each(&:reindex) end |
#resource_type_field ⇒ Object
51 52 53 |
# File 'app/models/concerns/spotlight/solr_document.rb', line 51 def resource_type_field :"#{Spotlight::Engine.config.solr_fields.prefix}spotlight_resource_type#{Spotlight::Engine.config.solr_fields.string_suffix}" end |
#solr_field_for_tagger(tagger) ⇒ Object
43 44 45 |
# File 'app/models/concerns/spotlight/solr_document.rb', line 43 def solr_field_for_tagger(tagger) :"#{solr_field_prefix(tagger)}tags#{Spotlight::Engine.config.solr_fields.string_suffix}" end |