我需要本地化一个应用程序,所以我为西班牙语翻译创建了一个文件,但该config/locales/es.yml
文件似乎没有正确加载,或者它可能在我的模板评估后加载。
首先是一点上下文,我正在使用handlebars_assets和haml_assets gems。后者允许ActionView
在资产管道的模板中使用助手,并且它还可以访问应用程序类,因此可以编写如下模板:
.some_div
= SomeModel.model_name.human
它有效,除了它返回模型的后备名称。如果我在视图中进行这些类型的翻译(而不是.hbs.haml
模板),我会得到正确的翻译字符串。如果我在 rails 控制台中执行翻译方法也是如此。
遵循Rails 指南,我创建了以下初始化程序:
I18n.default_local = :es
如果我认为在视图中翻译会呈现预期的输出,那么它可以正常工作。我的应用程序主要位于客户端,所以我真的不使用 Rails 的视图,它是在 Backbone 的帮助下管理的单页应用程序。所有 UI 都存在于通过资产管道呈现的模板中。所以我的问题是,有没有人设法让 I18n 使用这个设置?