在 rails i18n 和 bootstrap datepicker 之间同步日期格式
Synchronize date format between rails i18n and bootstrap datepicker
bootstrap 日期选择器要求日期格式为:
mm/dd/yyyy
但 Rails i18n 格式定义为:
%m/%d/%Y
我的网站有很多不同的翻译。我想以 Rails i18n 格式定义日期格式并将其传递给日期选择器,以便我只为每个语言环境定义一次日期格式。
我可以使用以下方法检索当前语言环境的日期格式:
I18n.translate('date.formats.default')
有没有一种简单的方法可以将 %m/%d/%Y 转换为 mm/dd/yyyy 以便它可以与日期选择器一起使用?
Bootstrap 日期选择器可以配置为所需的格式:
$('.datepicker').datepicker({
format: 'mm/dd/yyyy'
});
我建议设置一个特定于每种语言的必需日期选择器format:
# config/locales/en.yml
pirate:
time:
formats:
short: "%m/%d/%y"
datepicker: "mm/dd/yyyy"
然后您应该能够将其传递给日期选择器:
$('.datepicker').datepicker({
format: <%= I18n.t 'time.formats.datepicker' %>
});
理想情况下,您希望日期选择器以相同的格式提交日期时间,而不管它如何显示给用户。查看 the bootstrap format api doc 以获取有关提供不同显示和(提交的)值的信息
bootstrap 日期选择器要求日期格式为:
mm/dd/yyyy
但 Rails i18n 格式定义为:
%m/%d/%Y
我的网站有很多不同的翻译。我想以 Rails i18n 格式定义日期格式并将其传递给日期选择器,以便我只为每个语言环境定义一次日期格式。
我可以使用以下方法检索当前语言环境的日期格式:
I18n.translate('date.formats.default')
有没有一种简单的方法可以将 %m/%d/%Y 转换为 mm/dd/yyyy 以便它可以与日期选择器一起使用?
Bootstrap 日期选择器可以配置为所需的格式:
$('.datepicker').datepicker({
format: 'mm/dd/yyyy'
});
我建议设置一个特定于每种语言的必需日期选择器format:
# config/locales/en.yml
pirate:
time:
formats:
short: "%m/%d/%y"
datepicker: "mm/dd/yyyy"
然后您应该能够将其传递给日期选择器:
$('.datepicker').datepicker({
format: <%= I18n.t 'time.formats.datepicker' %>
});
理想情况下,您希望日期选择器以相同的格式提交日期时间,而不管它如何显示给用户。查看 the bootstrap format api doc 以获取有关提供不同显示和(提交的)值的信息