在Rails中的某些小时之间获取随机时间对象

jua*_*tas 3 ruby datetime ruby-on-rails

我想要一个方法:

def time_between(from, to)
  ***
end

time_between 10.am.of_today, 3.pm.of_today # => 1pm Time object
time_between 10.am.of_today, 3.pm.of_today # => 3pm Time object
time_between 10.am.of_today, 3.pm.of_today # => 10:30am Time object
# I mean random
Run Code Online (Sandbox Code Playgroud)

这里有两个问题:如何实施***?以及如何实施x.pm.of_today

uok*_*ita 8

红宝石1.9.3

require 'rubygems'
require 'active_support/all'

def random_hour(from, to)
  (Date.today + rand(from..to).hour + rand(0..60).minutes).to_datetime
end

puts random_hour(10, 15)
Run Code Online (Sandbox Code Playgroud)