module PgSearchable::ActiveRecord::Extensions::ClassMethods

Public Instance Methods

pg_searchable(name, options = {}) click to toggle source
# File lib/pg_searchable/active_record/extensions.rb, line 16
def pg_searchable (name, options = {})
  pg_searchable_configs[name.to_sym] = {
    tgrm:       _pg_searchable_options,
    dmetaphone: _pg_searchable_options,
    tsearch:    _pg_searchable_options
  }.deep_merge(options)
end
pg_searchable_configs() click to toggle source
# File lib/pg_searchable/active_record/extensions.rb, line 24
def pg_searchable_configs
  @pg_searchable_configs ||= {}
end

Private Instance Methods

_pg_searchable_columns() click to toggle source
# File lib/pg_searchable/active_record/extensions.rb, line 33
def _pg_searchable_columns
  @_pg_searchable_columns ||= columns_hash.find_all {|k,v| [:string, :text].include?(v.type) }.map {|k,v| v.name }
end
_pg_searchable_options() click to toggle source
# File lib/pg_searchable/active_record/extensions.rb, line 29
def _pg_searchable_options
  @_pg_searchable_options ||= DEFAULT_OPTIONS.merge(columns: _pg_searchable_columns)
end