优雅"转移"范围的值

时间:2014-09-06 12:05:32

标签: ruby-on-rails ruby range

我有一个日期范围,我想“撤回”一个月。

这就是我想出来的:

def pull_back range, value
  min, max = %i{min max}.map{ |m| range.try(m) - value }
  min..max
end

有更好的“shift_range”方法吗? 不是重复的单行?

1 个答案:

答案 0 :(得分:3)

你可以这样做: -

def pull_back range, value
  range.min - value..range.max - value
end