(3.years.ago.to_date..Date.today).map { |date| [date.month, date.year] }.uniq!
[[11, 2008], [12, 2008], [1, 2009], [2, 2009], [3, 2009], [4, 2009], [5, 2009], [6, 2009], [7, 2009], [8, 2009], [9, 2009], [10, 2009], [11, 2009], [12, 2009], [1, 2010], [2, 2010], [3, 2010], [4, 2010], [5, 2010], [6, 2010], [7, 2010], [8, 2010], [9, 2010], [10, 2010], [11, 2010], [12, 2010], [1, 2011], [2, 2011], [3, 2011], [4, 2011], [5, 2011], [6, 2011], [7, 2011], [8, 2011], [9, 2011], [10, 2011], [11, 2011]]
如何變成一個哈希這種結構:
[
[month => 11, year => 2008],
[month => 12, year => 2008],
[month => 1, year => 2009],
etc
]
所以我可以用它喜歡:
foo.first.month # returns 11
foo.first.year # returns 2008
等
foo.first返回'{:一個月=> 11:年=> 2008}'但foo.first.months回報'NoMethodError:{:month => 11,:year => 2008}的未定義方法'month':Hash'。任何想法爲什麼? –
我已經更新了我的答案。 –
我明白了。爲了避免這個問題。使用關聯數組是否很常見?這是否合理?還是有更好的方法來做到這一點與哈希方法? –