我正在使用rails 4创建一个应用程序。在一种形式上,我使用date_select助手帮助用户选择他们的出生日期。我可以把月份的名字改成泰语,这没问题。但我想知道是否有办法按照泰国历法来显示年数,这比基督教的年历多543年。例如,如果今年是2015年,那么泰国年将是2015+543 = 2558,如果年份是1991年,那么泰国年将是1991+543=2534。我真的很想知道是否能做到:)。谢谢。
发布于 2015-04-14 19:41:05
您可以使用内置于I18n支持中的Rails。为泰语config/locales/th.rb
创建一个区域设置文件,并覆盖默认日期格式。如果您已经有了一个th.yml
文件,则必须将其转换为Ruby散列,并将该文件重命名为th.rb
以使其工作:
{
th: {
date: {
formats: {
default: lambda { |date, _| "%d.%m.#{date.year + 543}" }
}
}
}
}
现在,只要您的地区设置为th
,默认日期将显示当前年份加上543:
I18n.locale = :th
puts I18n.l(Date.current) #=> "04.14.2558"
https://stackoverflow.com/questions/29635534
复制相似问题