Ruby具有惊人的时间对象处理能力。例如
1.month + 1.day
我想在rails模型中将1.month
转换为字符串"1 month"
。
我该怎么做?
感谢
当我尝试时,使用inspect会返回该字符串。
1.month.inspect #=> "1 month"
2.months.inspect #=> "2 months"
2.month.inspect #=> "2 months"
更新出于兴趣,我在任何文档中都没有找到这个答案。(也许它在某个地方可用,但我还没有看到。(我的第一步是在尝试获取某个东西的字符串值(to_s
和inspect
(时尝试两个最有可能的候选者,所以我很快就找到了。然而,我继续尝试通过查看使用1.month.methods.sort
的可用方法和各种to_*
方法来找到一种不基于使用inspect的方法。当试图弄清楚一个特定的ruby对象将提供什么时,最后一个可能是一个方便的尝试。