Рельсы "моменты назад" вместо даты создания? - PullRequest
0 голосов
/ 01 сентября 2010

В настоящее время в моем помощнике есть следующее:

def created_today k 
  if k.created_at.to_date == Date.today then 
    content_tag(:span, 'Today', :class => "todayhighlight") 
  else 
    k.created_at.to_s(:kasecreated) 
  end
end

Я хотел бы заменить TODAY на MOMENTS AGO, если время created_at находится в пределах последних 10 минут.

Возможно ли это?

Я бы просто добавил еще одну строку "если" после текущей "если k.created_at.to_date == Date.today then"?

Спасибо,

Дэнни

ОБНОВЛЕНИЕ:

def created_today k 
  if k.created_at.to_date == Date.today then 
    content_tag(:span, 'Today', :class => "todayhighlight") 

  if k.created_at > 1.minutes.ago then
    content_tag(:span, 'Moments Ago', :class => "todayhighlight") 

  else 
    k.created_at.to_s(:kasecreated) 
  end
end

1 Ответ

1 голос
/ 01 сентября 2010

Вы могли бы сделать

 if k.created_at > 10.minutes.ago then
   ...
 elsif k.created_at.to_date == Date.today then
   ...
 else
   ...

Обратите внимание, что вы должны поставить 10-минутную проверку перед проверкой сегодня, потому что дата менее 10 минут назад наиболее вероятна в тот же день.

...