Module: Superstore::QueryMethods

Included in:
Scope
Defined in:
lib/superstore/scope/query_methods.rb

Instance Method Summary collapse

Instance Method Details

#limit(value) ⇒ Object



39
40
41
# File 'lib/superstore/scope/query_methods.rb', line 39

def limit(value)
  clone.limit! value
end

#limit!(value) ⇒ Object



34
35
36
37
# File 'lib/superstore/scope/query_methods.rb', line 34

def limit!(value)
  self.limit_value = value
  self
end

#order(*values) ⇒ Object



48
49
50
# File 'lib/superstore/scope/query_methods.rb', line 48

def order(*values)
  clone.order! values
end

#order!(*values) ⇒ Object



43
44
45
46
# File 'lib/superstore/scope/query_methods.rb', line 43

def order!(*values)
  self.order_values = values.flatten
  self
end

#select(*values, &block) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/superstore/scope/query_methods.rb', line 8

def select(*values, &block)
  if block_given?
    to_a.select(&block)
  else
    clone.select!(*values)
  end
end

#select!(*values) ⇒ Object



3
4
5
6
# File 'lib/superstore/scope/query_methods.rb', line 3

def select!(*values)
  self.select_values += values.flatten
  self
end

#where(*values) ⇒ Object



21
22
23
# File 'lib/superstore/scope/query_methods.rb', line 21

def where(*values)
  clone.where! values
end

#where!(*values) ⇒ Object



16
17
18
19
# File 'lib/superstore/scope/query_methods.rb', line 16

def where!(*values)
  self.where_values += values.flatten
  self
end

#where_ids(*ids) ⇒ Object



30
31
32
# File 'lib/superstore/scope/query_methods.rb', line 30

def where_ids(*ids)
  clone.where_ids! ids
end

#where_ids!(*ids) ⇒ Object



25
26
27
28
# File 'lib/superstore/scope/query_methods.rb', line 25

def where_ids!(*ids)
  self.id_values += ids.flatten
  self
end