在轨道上的红宝石中减去两个日期

时间:2012-11-03 10:45:40

标签: mysql ruby-on-rails ruby-on-rails-3 date

我以这种方式在模型中减去两个日期: -

  def total_days
      self.to_date - self.from_date
  end

我的约会日期为Mysql Date(YYYY-MM-DD)格式。

在视图中显示我的日期时,它会给我5/1天的时间。尽管5是正确的,但它会将'/1'追加到日期。我怎么能删除这个。有没有更好的方法呢?

2 个答案:

答案 0 :(得分:16)

试试这个,例如

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

答案 1 :(得分:1)

您还可以在视图中使用:

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