我想在Rails中获得本地化日期格式的模板字符串。我想做的是:
date_in_us = get_date_string(:en) # 'mm/dd/yyyy'
date_in_gb = get_date_string(:en-gb) # 'dd/mm/yyyy'
因此,需要说明的是,我并不试图本地化一个真实的日期,我试图获取日期格式字符串,以便将其显示为文本字段中的占位符。
我在互联网上搜索的所有东西都让我回到了真正的本地化日期。:-/
我想在Rails中获得本地化日期格式的模板字符串。我想做的是:
date_in_us = get_date_string(:en) # 'mm/dd/yyyy'
date_in_gb = get_date_string(:en-gb) # 'dd/mm/yyyy'
因此,需要说明的是,我并不试图本地化一个真实的日期,我试图获取日期格式字符串,以便将其显示为文本字段中的占位符。
我在互联网上搜索的所有东西都让我回到了真正的本地化日期。:-/
2条答案
按热度按时间xj3cbfub1#
这是行不通的,因为这不是指定格式的方式。对于英语,这是指定日期格式的方式:
如果你好奇的话,这里有这些百分比占位符的文档。
为了解决您的问题,我将创建一个日期,将其本地化,然后替换部分:
注意,如果语言环境使用2位数的年份格式,这可能不起作用。让我们在一些语言环境中尝试一下(使用rails-i18 n的默认值):
formats
将为:cdmah0mi2#
默认情况下,所有翻译都应该放在config/locales目录中,并划分为文件。
下面是一个带有日期模式的
en.yml
示例。因此,以下所有等效查找都将返回:short date格式“%B %d”:
请查看此guide,了解如何在Ruby on Rails中进行i18 n本地化