Module: Trax::Model::ExtensionsFor::Numeric::ClassMethods

Defined in:
lib/trax/model/extensions_for/numeric.rb

Instance Method Summary collapse

Instance Method Details

#between(lower_value, upper_value) ⇒ Object



10
11
12
# File 'lib/trax/model/extensions_for/numeric.rb', line 10

def between(lower_value, upper_value)
  gt(lower_value).merge(lt(upper_value))
end

#eq(*_scope_values) ⇒ Object



18
19
20
21
# File 'lib/trax/model/extensions_for/numeric.rb', line 18

def eq(*_scope_values)
  _scope_values.flat_compact_uniq!
  model_class.where({field_name => _scope_values})
end

#gt(value) ⇒ Object



23
24
25
26
# File 'lib/trax/model/extensions_for/numeric.rb', line 23

def gt(value)
  operator = '>'
  model_class.where("#{field_name} #{operator} ?", value)
end

#gte(value) ⇒ Object



28
29
30
31
# File 'lib/trax/model/extensions_for/numeric.rb', line 28

def gte(value)
  operator = '>='
  model_class.where("#{field_name} #{operator} ?", value)
end

#in_range(lower_value, upper_value) ⇒ Object



14
15
16
# File 'lib/trax/model/extensions_for/numeric.rb', line 14

def in_range(lower_value, upper_value)
  gte(lower_value).merge(lte(upper_value))
end

#lt(value) ⇒ Object



33
34
35
36
# File 'lib/trax/model/extensions_for/numeric.rb', line 33

def lt(value)
  operator = '<'
  model_class.where("#{field_name} #{operator} ?", value)
end

#lte(value) ⇒ Object



38
39
40
41
# File 'lib/trax/model/extensions_for/numeric.rb', line 38

def lte(value)
  operator = '<='
  model_class.where("#{field_name} #{operator} ?", value)
end