module SwitchSearchable::SearchEngine::Postgres::ClassMethods

Public Instance Methods

init_search_engine(*names) click to toggle source
# File lib/switch_searchable/search_engine/postgres.rb, line 19
def init_search_engine(*names)
  trigram_threshold = {using: {trigram: {
    threshold: 0.05
  }}}

  # there should only be one Hash in *names
  associated_against = nil
  against = names.flatten.inject([]) do |array, value|
    if value.is_a? Symbol
      array << value
    elsif value.is_a? Hash
      associated_against = value
    end

    array
  end

  pg_search_scope(:pg_search, {
    against: against,
    associated_against: associated_against,
  }.merge(trigram_threshold))
end
reindex_search_engine!() click to toggle source
# File lib/switch_searchable/search_engine/postgres.rb, line 46
def reindex_search_engine!; end