Module: Filemaker::Model::Batches

Defined in:
lib/filemaker/model/batches.rb

Instance Method Summary collapse

Instance Method Details

#in_batches(batch_size: 200, options: {}, sleep: 0) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
# File 'lib/filemaker/model/batches.rb', line 4

def in_batches(batch_size: 200, options: {}, sleep: 0)
  output = []
  total = self.in(options).count
  pages = (total / batch_size.to_f).ceil
  1.upto(pages) do |page|
    sleep(sleep)
    output.concat self.in(options).per(batch_size).page(page)
  end

  output
end

#where_batches(batch_size: 200, options: {}, sleep: 0) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/filemaker/model/batches.rb', line 16

def where_batches(batch_size: 200, options: {}, sleep: 0)
  output = []
  total = where(options).count
  pages = (total / batch_size.to_f).ceil
  1.upto(pages) do |page|
    sleep(sleep)
    output.concat where(options).per(batch_size).page(page)
  end

  output
end