lista horas hora generar fechas fecha año aleatorio aleatorias aleatoria ruby-on-rails ruby datetime random-time-generation

ruby on rails - horas - ¿Cómo generar una fecha y hora aleatoria entre dos fechas?



generar horas aleatorias en excel (8)

Calcule la diferencia, por ejemplo, en minutos entre las dos fechas, genere un número aleatorio entre 0 y ese número, y agregue esa cantidad de minutos a la primera fecha.

Sin embargo, no pase por alto la parte de "fecha y hora".


Debería poder generar fechas / tiempos aleatorios dentro de un cierto rango.

now = Time.now a_day_ago = now - 60 * 60 * 24 random_time = rand(a_day_ago..now) # with activesupport required up_to_a_year_ago = rand(1.year.ago..Time.now)

Sus entradas deben ser de la clase Time o convertidas en una.

También podría hacer un rango de tiempo en tiempo de época y luego usar Time#at .

now = Time.now.to_i minute_ago = (Time.now - 60).to_i Time.at(rand(minute_ago..now))


No sé sobre ruby, pero ¿por qué no genera un entero y lo usa junto con una marca de tiempo? Luego simplemente convierta la marca de tiempo al formato deseado.


Si conoce el punto medio y el rango de desplazamiento en cualquier lado del punto medio, puede usar mi gema ish: https://github.com/spilliton/ish

mid_date.ish(:offset => 60.days)


Usa el método rand() .

require ''time'' t1 = Time.parse("2015-11-16 14:40:34") t2 = Time.parse("2015-11-20 16:20:23") puts rand(t1..t2)


Use time.to_i() (vea la clase Time ) para convertir sus fechas a números enteros, seleccione al azar entre esos dos valores, luego reconvertir a time and date con Time.at() .


Time.at((date2.to_f - date1.to_f)*rand + date1.to_f)

Obtendrá un objeto de tiempo entre dos fechas determinadas.


Time.at(rand(Time.parse(''some date'').to_i..Time.now.to_i))