2012-09-12 74 views
1

之間每隔一小時。如果我定義如下:的Rails:遍歷兩次

timetogoback = Time.zone.local(2012,8,01,0,0) 

    timeupto = Time.zone.local(2012,9,12,12,0) 

由於兩次,我怎麼然後創建一個循環,在這些時間之間每隔一小時迭代?

我試圖運行一次性任務,以從現有數據創建按小時彙總表。因此,我想循環並將created_at設置爲正確的小時,​​以便計算和保存的數據在該確切小時內是正確的。

謝謝。

回答

1

這裏是一個while循環,增加​​直到它大於timeupto

while timeupto > timetogoback do 
    timetogoback += 1.hour 
    print "#{timetogoback}\n" 
end 
+1

有沒有在這個問題RoR的標籤,所以你可以把它更加明確的使用'1.hour'而不是'60 * 60' :) – jdoe

+0

感謝您的提示,編輯使用'1.hour' – Trevor