[ruby-on-rails] Ruby / Rails의 “Ago”날짜 / 시간 함수

저는 Rails에서 30 분 전, 2 분 전, 1 일 전 등의 타임 스탬프를 계산하는 방법이 있는지 궁금합니다. 트위터 실시간 날짜 스탬프와 같은 것입니다.

Ruby / Rails에 이러한 날짜-시간 변환 기능이 내장되어 있는지 알고 싶습니다.



답변

당신이 사용할 수있는:

10.minutes.ago
2.days.since

또는 귀하의 견해에는 도우미가 있습니다.

distance_of_time_in_words(from_time, to_time)
time_ago_in_words(from_time)

세부 사항 및 추가 옵션 은 API 를 확인하십시오 .


답변

사용 가능한 방법을 사용하여 ago, since별칭 from_now및 사용 가능한 많은 방법 을 사용하여 과거 또는 미래의 시간을 얻을 수 있습니다.

Time.current
#=> Tue, 20 Sep 2016 15:03:30 UTC +00:00

2.minutes.ago
#=> Tue, 20 Sep 2016 15:01:30 UTC +00:00

2.minutes.since
#=> Tue, 20 Sep 2016 15:05:30 UTC +00:00 

1.month.ago
#=> Sat, 20 Aug 2016 15:03:30 UTC +00:00

1.year.since
#=> Wed, 20 Sep 2017 15:03:30 UTC +00:00 

Time 클래스 에서 사용 가능한 모든 메서드 확인


답변

distance_of_time_in_words :

from_time = Time.now

distance_of_time_in_words(from_time, from_time + 50.minutes) # => about 1 hour
distance_of_time_in_words(from_time, 50.minutes.from_now) # => about 1 hour
distance_of_time_in_words(from_time, from_time + 15.seconds) # => less than a minute
distance_of_time_in_words(from_time, from_time + 15.seconds, include_seconds: true) # => less than 20 seconds

time_ago_in_words :

time_ago_in_words(3.minutes.from_now) # => 3 minutes
time_ago_in_words(3.minutes.ago) # => 3 minutes
time_ago_in_words(Time.now - 15.hours) # => about 15 hours


답변