Check following code.
@shipment_products = [ {"old_qty_shipped"=>"324", "product_id"=>"1", "qty_shipped"=>"12443"}, {"old_qty_shipped"=>"4343423", "product_id"=>"3", "qty_shipped"=>"321344"} , {"old_qty_shipped"=>"23", "product_id"=>"4", "qty_shipped"=>"321"}]
@shipment_products.each do |p|
Product.adjust_qtys(p['old_qty_shipped'], p['qty_shipped'], p['product_id'])
end
-------------------
the_count = [1, 2, 3, 4, 5]
fruits = ['apples', 'oranges', 'pears', 'apricots']
change = [1, 'pennies', 2, 'dimes', 3, 'quarters']
# this first kind of for-loop goes through a list
# in a more traditional style found in other languages
for number in the_count
puts "This is count #{number}"
end
# same as above, but in a more Ruby style
# this and the next one are the preferred
# way Ruby for-loops are written
fruits.each do |fruit|
puts "A fruit of type: #{fruit}"
end
# also we can go through mixed lists too
# note this is yet another style, exactly like above
# but a different syntax (way to write it).
change.each {|i| puts "I got #{i}" }
# we can also build lists, first start with an empty one
elements = []
# then use the range operator to do 0 to 5 counts
(0..5).each do |i|
puts "adding #{i} to the list."
# pushes the i variable on the *end* of the list
elements.push(i)
end
# now we can print them out too
elements.each {|i| puts "Element was: #{i}" }