This should work: 

items = 12.times.map { [i.day.ago.to_date, { :coder=>@numdeployed, 
:imedidata=>@numdeployed, 
:balance=>@numdeployed, :CTMS=>@numdeployed } ] }.flatten
result = Hash[*items]

Daniel

On Friday, August 3, 2012 5:03:04 PM UTC-4, Ruby-Forum.com User wrote:
>
> I'm trying to create a dynamic loop within the hash @data below and 
> can't really seem to figure it out. The array within the hash has to be 
> dynamic i:e the day number has to be generated by a loop either while or 
> until and the name of the product  and number are dynamic as well. I'll 
> try to explain in the loop below 
>
> @numdeployed comes from a table in the db 
>
> i = 0 
> until i == 12 
>   i.day.ago.to_date => { :coder=>@numdeployed, :imedidata=>@numdeployed, 
> :balance=>@numdeployed, :CTMS=>@numdeployed }, 
>   i += 1 
> end 
>
>
> Original Data Hash 
>
> @data = { 
>       1.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       2.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       3.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       4.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       5.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       6.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       7.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       8.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>       9.day.ago.to_date => { :coder=>10, :imedidata=>40, :balance=>10, 
> :CTMS=>40 }, 
>      10.day.ago.to_date => { :coder=>200, :imedidata=>190, :balance=>70, 
> :CTMS=>90 }, 
>       11.day.ago.to_date => { :coder=>190, :imedidata=>200, 
> :balance=>200, :CTMS=>150 }, 
>       12.day.ago.to_date => { :coder=>100, :imedidata=>400, 
> :balance=>100, :CTMS=>100 } 
>
> } 
>
> hope someone can help. Thanks 
>
> -- 
> Posted via http://www.ruby-forum.com/. 
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msg/rubyonrails-talk/-/ZhiN7kFGTKAJ.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to