Module: TypesenseModel

Defined in:
lib/typesense_model/sync_job.rb,
lib/typesense_model.rb,
lib/typesense_model/base.rb,
lib/typesense_model/schema.rb,
lib/typesense_model/search.rb,
lib/typesense_model/version.rb,
lib/typesense_model/configuration.rb,
lib/typesense_model/active_record_extension.rb

Overview

Loaded only when ActiveJob is available (see typesense_model.rb). Performs the Typesense sync/remove off the request cycle when a model opts into ‘uses_typesense(async: true)`.

Defined Under Namespace

Modules: ActiveRecordExtension Classes: Base, Configuration, Error, Schema, Search, SearchResults, SyncJob

Constant Summary collapse

VERSION =
"0.2.1"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



17
18
19
# File 'lib/typesense_model.rb', line 17

def configuration
  @configuration
end

.loggerObject

Logger used for non-fatal failures (e.g. background sync errors). Defaults to Rails.logger when available, otherwise a STDERR logger. Assign your own with TypesenseModel.logger = …



29
30
31
32
33
34
35
# File 'lib/typesense_model.rb', line 29

def self.logger
  @logger ||= if defined?(Rails) && Rails.respond_to?(:logger) && Rails.logger
    Rails.logger
  else
    Logger.new($stderr)
  end
end

Class Method Details

.configure {|configuration| ... } ⇒ Object

Yields:



21
22
23
24
# File 'lib/typesense_model.rb', line 21

def self.configure
  self.configuration ||= Configuration.new
  yield(configuration) if block_given?
end