저는 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 를 확인하십시오 .
require 'active_support'
(최소한 Rails 2.X가 설치된 경우).
사용 가능한 방법을 사용하여 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 클래스 에서 사용 가능한 모든 메서드 확인
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(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
10.minutes.ago
분이 아닙니다.