# File lib/ansr/arel/big_table.rb, line 12 def self.primary_key @primary_key ||= 'id' end
class Ansr::Arel::BigTable
Attributes
facets[R]
fields[R]
klass[R]
model[R]
primary_key[W]
sorts[R]
Public Class Methods
new(klass, engine=nil)
click to toggle source
Calls superclass method
# File lib/ansr/arel/big_table.rb, line 20 def initialize(klass, engine=nil) super(klass.name, engine.nil? ? klass.engine : engine) @klass = klass.model @fields = [] @facets = [] @sorts = [] @field_configs = {} end
primary_key()
click to toggle source
primary_key=(key)
click to toggle source
# File lib/ansr/arel/big_table.rb, line 16 def self.primary_key=(key) @primary_key = key end
Public Instance Methods
[](name)
click to toggle source
# File lib/ansr/arel/big_table.rb, line 37 def [] name name = (name.respond_to? :name) ? name.name.to_sym : name.to_sym (@field_configs.include? name) ? Ansr::Arel::ConfiguredField.new(self, name, @field_configs[name]) : ::Arel::Attribute.new( self, name) end
configure_fields() { |field_configs| ... }
click to toggle source
# File lib/ansr/arel/big_table.rb, line 42 def configure_fields if block_given? yield @field_configs end @field_configs end
primary_key()
click to toggle source
# File lib/ansr/arel/big_table.rb, line 29 def primary_key @primary_key ||= ::Arel::Attribute.new( self, self.class.primary_key ) end