在我的Rails应用程序中,我需要从其他日期开始获取特定工作日下一次出现的日期。所以基本上我需要date.next_monday
,date.next_wednesday
类型函数。我不认为这些存在于标准的Ruby库中,所以我决定像这样修补Date类:
class Date
weekdays = [:sunday, :monday, :tuesday, :wednesday, :thursday, :friday, :saturday]
weekdays.each do |weekday|
method_name = "next_" + weekday.to_s
send :define_method, method_name do
tmp_date = self + 1
until tmp_date.send((weekday.to_s + "?").to_sym)
tmp_date = tmp_date + 1
end
tmp_date
end
end
end
这似乎工作正常。 我的问题是:
谢谢!