Module: OssActiveRecord::Searchable
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/oss_active_record/searchable.rb
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
Instance Method Details
#index(index_instance) ⇒ Object
55 56 57 58 59 60 61 62 |
# File 'lib/oss_active_record/searchable.rb', line 55 def index(index_instance) doc = self.to_indexable(index_instance.fields) oss_doc = Oss::Document.new doc.each do |name,value| oss_doc.fields << Oss::Field.new(name, value) end index_instance.index(oss_doc) end |
#to_indexable(fields) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/oss_active_record/searchable.rb', line 64 def to_indexable(fields) doc={} fields.each do |field| if field[:block].nil? val = self.send(field[:name].to_sym) else val = field[:block].call end doc["#{field[:name]}|#{field[:type]}"]=val end doc end |