对于time_ago_in_words,String与ActiveSupport :: Duration的比较失败

时间:2009-10-30 03:06:07

标签: ruby-on-rails time activesupport

我尝试使用time_ago_in_words时出现此错误:

Comparison of String with ActiveSupport::Duration failed

我正在尝试检查对象是否在8分钟前创建:

  <% if time_ago_in_words(obj.created_at) > 8.minutes  %>
    <p>Yes</p>
  <% end %>

如果有人知道执行此测试的正确方法,我将不胜感激。

1 个答案:

答案 0 :(得分:3)

time_ago_in_words会返回一个意图在您的UI中使用的短语。如果您要将日期相互比较,那么在将其转换为用户友好的字符串之前,您将希望这样做。

另请注意,我使用minutes.ago来比较苹果和苹果。

<% if obj.created_at > 8.minutes.ago  %>
    Within the last 8 minutes
<% else %>
    Longer than 8 minutes ago
<% end %>