2015-04-17 32 views
0

所以我是新來的紅寶石,我卡住了1.8.7此刻。我在閱讀文檔後試圖給時間對象添加10分鐘,我沒有這樣的運氣。紅寶石1.8.7添加10分鐘的時間對象

require "time" 

curr_time = Time.now.strftime("%d-%b-%Y %H:%M:%S") 
curr_time = curr_time + 600 

然後我得到一個錯誤說

'+':不能轉換爲長整數字符串(類型錯誤)

任何想法?

+0

順便說一句,你爲什麼使用過時的1.8.7版本? –

+0

@MarekLipka我們在其中一個盒子上運行較舊的操作系統,這是最新的兼容版本。沒有人使用Ruby,除了我正在運行的這個背景腳本,所以它不是一個優先事項 – Gus

回答

6

這是因爲在你curr_time變量,你必須strftime方法調用,這是String,不Time實例的結果。要添加10分鐘後,你可以這樣做:

curr_time = Time.now 
(curr_time + 600).strftime("%d-%b-%Y %H:%M:%S") 
4

你應該「增加時間」 Time對象本身,而不是它的string表示:

require "time" 

curr_time = Time.now 
curr_time = curr_time + 600 
formatted = curr_time.strftime("%d-%b-%Y %H:%M:%S") 

希望可以解決您的問題!