W Rubim, jak to zrobić Time.now + 10.hours
?
Czy istnieje odpowiednik dla secs
i mins
? Na przykład:
Time.now + 15.mins
Odpowiedzi:
Ruby (język programowania) nie ma 10.hours
, jest to ActiveSupport
część Ruby on Rails (framework sieciowy). I tak, ma oba minutes
i seconds
metody.
Jednak Time#+
(metoda + w wystąpieniach Time) zwraca nowe wystąpienie Time, czyli tyle sekund w przyszłości. Więc bez cukru Ruby on Rails możesz po prostu zrobić:
irb> t = Time.now
#=> 2011-08-03 22:35:01 -0600
irb> t2 = t + 10 # 10 Seconds
#=> 2011-08-03 22:35:11 -0600
irb> t3 = t + 10*60 # 10 minutes
#=> 2011-08-03 22:45:01 -0600
irb> t4 = t + 10*60*60 # 10 hours
#=> 2011-08-04 08:35:01 -0600
Myślę, że mówisz o rozszerzeniach dodanych przez Railsy. Myślę, że potrzebujesz 15.minutes
.
Aby uzyskać więcej informacji, zobacz rozszerzenia Active Support Core Extensions dla daty, daty, godziny i godziny .
10 + Time.now
::TypeError: Time can't be coerced into Fixnum
aleTime.now + 10
działa .. dla wszystkich, którzy mają ten sam problem;)