class DbTextSearch::CaseInsensitive::InsensitiveColumnAdapter

Provides case-insensitive string-in-set querying for case-insensitive columns. @api private

Public Class Methods

add_index(connection, table_name, column_name, options = {}) click to toggle source

(see AbstractAdapter.add_index)

# File lib/db_text_search/case_insensitive/insensitive_column_adapter.rb, line 25
def self.add_index(connection, table_name, column_name, options = {})
  connection.add_index table_name, column_name, **options
end

Public Instance Methods

column_for_order(asc_or_desc) click to toggle source

(see AbstractAdapter#column_for_order)

# File lib/db_text_search/case_insensitive/insensitive_column_adapter.rb, line 20
def column_for_order(asc_or_desc)
  Arel.sql("#{quoted_scope_column} #{asc_or_desc}")
end
in(values) click to toggle source

(see AbstractAdapter#in)

# File lib/db_text_search/case_insensitive/insensitive_column_adapter.rb, line 10
def in(values)
  @scope.where(@column => values)
end
prefix(query) click to toggle source

(see AbstractAdapter#prefix)

# File lib/db_text_search/case_insensitive/insensitive_column_adapter.rb, line 15
def prefix(query)
  @scope.where "#{quoted_scope_column} LIKE ?", "#{sanitize_sql_like(query)}%"
end