Date SilverStripe如何在模板中转换日期函数?
我正在使用SilverStripe 3.1的模块多语言支持,并且没有将日期函数用于模板的文档 文件fluent.yml具有以下配置:Date SilverStripe如何在模板中转换日期函数?,date,multilingual,silverstripe,fluent,Date,Multilingual,Silverstripe,Fluent,我正在使用SilverStripe 3.1的模块多语言支持,并且没有将日期函数用于模板的文档 文件fluent.yml具有以下配置: --- Name: myfluentconfig After: '#fluentconfig' --- Fluent: default_locale: fr_CA locales: - en_CA - fr_CA aliases: en_CA: en fr_CA: fr --- Name: m
---
Name: myfluentconfig
After: '#fluentconfig'
---
Fluent:
default_locale: fr_CA
locales:
- en_CA
- fr_CA
aliases:
en_CA: en
fr_CA: fr
---
Name: myfluenti18nconfig
After: '#fluenti18nconfig'
---
i18n:
default_locale: fr_CA
我还在mysite/_config.php中删除了:
// i18n::set_locale('fr_FR');
这在我的网站上非常有用。但是如何用正确的语言显示日期呢?如果我的模板中的日期变量是$Date,我可以添加$Date.month以显示整个月份。但实际上,它只出现在fr_CA网站上的英文版本。那么,是否有可能以其他方式显示法语日期呢?日期和本地化,这是每个多语言开发人员的必经之路。根据当前区域设置,应使用返回格式化字符串。如果您没有在服务器上安装您的区域设置(fr\u fr),它将不起作用。或者如果您使用例如fr_FR@utf-8... 我必须在mysite/_config.php中的我的一个站点上包含此setlocale,才能使其正常工作:
setlocale(LC_TIME, "de_AT.utf8");
并在稍后的页面_controller::init()中覆盖它。(这是一个基于可翻译的网站,fluent会自动为您提供)
因此,请检查机器上已安装的区域设置。哦,很难理解您的awnser。如果认为我的代码示例混淆了我的问题。。。。我更新了我的问题。嗯,可能不是你的代码,而是服务器设置造成了这里的困难。您的服务器运行在什么操作系统上?您是否在服务器上安装了要使用的区域设置?请提供更多信息…好的,我会和我的服务器提供商联系,等我有了awnser后再回来。Thanks Formati18N有效,但不是100%。我不知道这是否是一个问题,但特殊字符显示«?»。我纠正了添加一个stringparser以UTF8编码的问题,就是这样!解析
$Date.FormatI18N(“%b”).UTF8encoding()