基于区域设置转换日期时间



你好,我是FTL代码的新手,我正在尝试根据区域设置的显示方式重新格式化日期。

我得到的错误:(请查看下面我们想要的结果的更多信息(

该字符串与预期的日期/时间/日期-时间格式不匹配。要解析的字符串是:";août 262035";。预期的格式是:";MM-dd,yyyy";。嵌套的原因如下:无法解析的日期:";aot 262035";

<#assign locale = userPreferences.getLanguage()>
my locale ${locale}<br>
<#if locale = "en_AU">
original = ${couponData.expiration}<br>
<#assign expiryDate = couponData.expiration?date("dd MM, yyyy")?string("dd MM yyyy")>
format ${expiryDate} <br>
${sys.declare("dateMonthYear", expiryDate)}
<#elseif locale = "en_GB">
original = ${couponData.expiration}<br>

<#assign expiryDate = couponData.expiration?date("MM dd, yyyy")?string("dd MM yyyy")>
format ${expiryDate} <br>
${sys.declare("dateMonthYear", expiryDate)}
<#elseif locale = "fr_CA">
original = ${couponData.expiration}<br>
<#assign expiryDate = couponData.expiration?date("MMM dd, yyyy")?string("dd MM. yyyy")>
format ${expiryDate} <br>
${sys.declare("dateMonthYear", expiryDate)}
<#else>
${sys.declare("dateMonthYear", "${couponData.expiration}")}
</#if> 

CA_FR来源:

Ends Jul 31, 2022
Actual:
Expire le juil. 31, 2022
Expected:
Expire le 31 juil. 2022

EN_GB来源:

Ends Jul 31, 2022.
Actual:
Ends Jul 31, 2022.
Expected:
Ends 31 Jul 2022.
enter code here

EN_AU来源:

截至2022年7月31日。实际:

截至2022年7月31日。预期:

2022年7月31日结束。

我能够解决我的问题:

在字符串MM-DD-YY中,似乎将格式化为类似2022年1月1日的

事实证明,三个MMM-DD-YYYY将于2022年1月1日给我

我可以操作字符串中的日期格式也可以

<#setting locale="fr">
<#assign expirationDate = expiration?number_to_date?string("yyyy MMM. dd")>

最新更新