2012-11-03 69 views
5

紅寶石兩個日期,我減去兩個日期在我的模型是這樣的: -減去在軌道上

def total_days 
     self.to_date - self.from_date 
    end 

我的日期是在Mysql Date(YYYY-MM-DD)格式。

在顯示我的日期時,它給我5/1天。儘管5是正確的,但它會追加'/1'的日子。我如何刪除這個。有沒有更好的方法來做到這一點?

回答

14

嘗試這個,例如

require 'date' 
$ now = Date.today 
$ before = Date.today + 2.days 
$ difference_in_days = (before - now).to_i 

您的解決方案

def total_days 
    difference_in_days = (self.to_date - self.from_date).to_i 
end 
+0

感謝.to_i爲我工作。 –

+0

如果你想在小時差,你可以使用:'difference_in_hours =(self.to_date - self.from_date).to_f * 24' – pisaruk

1

您也可以在視圖中工作與:

<%= distance_of_time_in_words(contract['start_date'], contract['end_date'])%> 
+0

更好的答案。謝謝 – Abram