1

前段时间用文字返回给我一个堆栈错误太深的错误。我怎么称呼它。

<%= link_to time_ago_in_words(f.created_at), f %>

在这里我做了什么,在article.helper

def time_ago_in_words(time_str)
    time = time_str.to_time + (-Time.zone_offset(Time.now.zone))
    "happened #{time_ago_in_words(time)} ago"
end

我不能重新定义 time_ago_in_words 吗?因为我也尝试了以下操作,它给了我同样的错误

<%= link_to ctime_ago_in_words(f.created_at), f %>


def ctime_ago_in_words(time_str)
    time = time_str.to_time + (-Time.zone_offset(Time.now.zone))
    "happened #{ctime_ago_in_words(time)} ago"
end
4

1 回答 1

6

原来的:

def ctime_ago_in_words(time_str)
    time = time_str.to_time + (-Time.zone_offset(Time.now.zone))
    "happened #{ctime_ago_in_words(time)} ago"
end

您仍然有一个反复调用自身的函数。我认为您的意思是最后一行:

"happened #{time_ago_in_words(time)} ago"
于 2012-08-31T18:15:48.860 回答