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