Method: Baza::Idquery#initialize
- Defined in:
- lib/baza/idquery.rb
#initialize(args, &block) ⇒ Idquery
Constructor.
Examples
idq = Baza::Idquery(db: db, table: :users) idq.ids + [1, 5, 9] idq.each do |user|
print "Name: #{user[:name]}\n"
end
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/baza/idquery.rb', line 13 def initialize(args, &block) @args = args @db = args.fetch(:db) @ids = [] @debug = @args[:debug] if @args[:query] @db.q(@args.fetch(:query)) do |data| @args[:col] = data.keys.first unless @args[:col] if data.is_a?(Array) @ids << data.first else @ids << data[@args[:col]] end end end @args[:col] = :id unless @args[:col] @args[:size] = 200 unless @args[:size] if block raise "No query was given but a block was." unless @args[:query] each(&block) end end |