module RediSearch::RediSearchable::InstanceMethods
Public Instance Methods
redisearch_add()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 18 def redisearch_add redisearch_document.add(replace: true, partial: true) end
redisearch_delete()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 22 def redisearch_delete redisearch_document.del(dd: true) end
redisearch_document()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 5 def redisearch_document @redisearch_document ||= generate_redisearch_document end
redisearch_document_id()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 26 def redisearch_document_id [self.class.redisearch_index.name, self.id].join('_') end
redisearch_reindex(**options)
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 9 def redisearch_reindex(**options) RediSearch::RecordIndexer.new(self).reindex(options) end
Also aliased as: reindex
should_index?()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 14 def should_index? true end
Private Instance Methods
generate_redisearch_document()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 32 def generate_redisearch_document index = self.class.redisearch_index serializer = redisearch_serializer || self fields = index.schema.fields.map(&:name) fields_values = Hash[fields.flatten.map! { |field| [field, serializer.public_send(field)] }] index.generate_document(redisearch_document_id, fields_values) end
redisearch_serializer()
click to toggle source
# File lib/redisearch-rails/redisearchable/instance_methods.rb, line 40 def redisearch_serializer self.class.redisearch_index_serializer.new(self) if self.class.redisearch_index_serializer end