我需要说出一个人的年龄。是否有 Rails 助手:
例如:
- 如果此人不到 1 个月:X 天
- 如果此人不到一岁:X 个月大
- 如果它介于 1 和 5 之间:X 年,Y 个月大
有任何想法吗?
我需要说出一个人的年龄。是否有 Rails 助手:
例如:
有任何想法吗?
您可以在 ActionView::Helpers::DateHelper 模块中自定义帮助程序。
除此之外,您可以很容易地创建自己的助手,而无需考虑闰日……这可能很重要,也可能不重要。
def humanize_age(person)
age = Date.today - person.birth_date
years = (age / 1.year).to_i
age = age % 1.year
months = (age / 1.month).to_i
age = age % 1.month
days = (age / 1.day).to_i
if years < 1
if months < 1
"#{days} days old"
else
"#{months} months old"
end
else
"#{years} years, #{months} months old"
end
end
这可以清理一下,我还没有测试过,但这应该可以。