2016-03-02 3 views
2

Я нашел список директив формата для метода strftimehttp://ruby-doc.org/core-2.3.0/Time.html#method-i-strftimeПродлить директивы STRFTIME форматировать время, как «завтра в 14:00»

Есть различные варианты форматирования времени, как в будние дни, день месяца ... Но я заинтересован в форматирование время, как

Time.parse("2016-02-30T12:24").strftime("%XXX, at %H:%M") 
# => tomorrow at 12:24 

%XXX Здесь должен быть «сегодня», «вчера», «завтра», «в 2-х дней» или «в 3-х дней».

Возможно ли продлить директивы от strftime, чтобы я мог использовать свой собственный заполнитель?

+1

Любые причины для этого на бэкэнде? Не теряйте время, используйте 'momentjs'. – axvm

+0

'strftime' не включает их, поскольку они относятся к другой дате/времени, например. 'Time.now'. Кроме того, они зависят от часового пояса пользователя, т. Е. Мой «сегодня» не обязательно должен быть вашим «сегодня» (хотя в этом случае он и есть). – Stefan

ответ

1

Вы можете использовать Rails Distance of Time in Words, который даст вам «около 1 день», но я думаю, что было бы проще в использовании MomentJS-х Calendar Time.

Календарное время поможет вам вернуть что-то вроде «Завтра в 2:30 утра»

+0

Хотя это может теоретически ответить на вопрос, [было бы желательно] (// meta.stackoverflow.com/q/8259) включить сюда основные части ответа и предоставить ссылку для справки. – SmokeDispenser

Смежные вопросы