Rails 4从现在起3年后的某个特定日期

时间:2015-11-10 02:51:18

标签: ruby-on-rails ruby date ruby-on-rails-4

我试图找到一种方法来解决"从现在起3年后的第3天"其中x日期不是今天。

def xmas
   self.new_xmas = @given_date + 3.years 
end

我坚持如何确保从@given_date

开始的3月25日

2 个答案:

答案 0 :(得分:1)

你可以做像Date.new(2015,12,25).next_year(3)这样的东西。

答案 1 :(得分:1)

你可以这样做:

require 'date'

given_date = Date.today # you can change it to any date
puts "given_date: #{given_date}"
current_year = given_date.year # grab the current year from the given_date
third_xmas_from_given_date = Date.new(current_year + 3, 12, 25) # add 3 years to the current_year (change it according to your need)
puts "third_xmas_from_given_date: #{third_xmas_from_given_date}"
# => given_date: 2015-11-09
# => third_xmas_from_given_date: 2018-12-25