class ThinkingSphinx::RealTime::Property

Attributes

column[R]
options[R]

Public Class Methods

new(column, options = {}) click to toggle source
# File lib/thinking_sphinx/real_time/property.rb, line 6
def initialize(column, options = {})
  @options = options
  @column  = column.respond_to?(:__name) ? column :
    ThinkingSphinx::ActiveRecord::Column.new(column)
end

Public Instance Methods

name() click to toggle source
# File lib/thinking_sphinx/real_time/property.rb, line 12
def name
  (@options[:as] || @column.__name).to_s
end
translate(object) click to toggle source
# File lib/thinking_sphinx/real_time/property.rb, line 16
def translate(object)
  return @column.__name unless @column.__name.is_a?(Symbol)

  base = @column.__stack.inject(object) { |base, node| base.try(node) }
  base = base.try(@column.__name)
  base.is_a?(String) ? base.gsub("\u0000", '') : base
end